COM Sockets
Rafferty
rafferty at aol.com
Wed May 3 17:31:30 EDT 2000
I am trying to establish a socket from Excel using COM python code. I
started with the sample code and tried enclosing it in COM but when I
execute I get a socket error 10061. Any ideas I want to use COM to send
data from Excel or Word to a socket server for testing.
Thanks
The code is below
COM Part:
class PythonComDemo:
_public_methods_= ['COMCreateSocket', 'COMSendToPython',
'COMRecieveFromPython']
_reg_progid_ = "ICE.COMUtilities"
#created via:
#import pythoncom
#print pythoncom.CreateGuid()
_reg_clsid_ = "{11F76A51-1A10-11D4-B656-00E02941D7F1}"
def COMCreateSocket(self):
import socket
Host = 'XXX.XXX.49.XXX' #real address used
Port = 7000
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(Host, Port)
s.send('Hello World')
data = s.recv(1024)
s.close
return `data`
def COMSendToPython(self, s):
return "data sent"
def COMRecieveFromPython(self, s):
return "good"
if __name__=='__main__':
print "Registering COM Server..."
import win32com.server.register
win32com.server.register.UseCommandLine(PythonComDemo)
Server Part:
# Echo server program
from socket import *
def serverSample():
HOST = '' # Symbolic name meaning the local host
PORT = 7000 # Arbitrary non-privileged server
s = socket(AF_INET, SOCK_STREAM)
s.bind(HOST, PORT)
s.listen(1)
conn, addr = s.accept()
print 'Connected by', addr
while 1:
data = conn.recv(1024)
if not data: break
conn.send(data)
conn.close()
if __name__ == '__main__':
serverSample()
More information about the Python-list
mailing list