1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
import sys
import time
class Tools:
_public_methods_ = [ 'reload', 'adddir', 'echo', 'sleep' ]
def reload(self, module):
if module in sys.modules:
try:
from imp import reload
except ImportError:
pass # builtin in py2k
reload(sys.modules[module])
return "reload succeeded."
return "no reload performed."
def adddir(self, dir):
if type(dir) == type(''):
sys.path.append(dir)
return str(sys.path)
def echo(self, arg):
return repr(arg)
def sleep(self, t):
time.sleep(t)
if __name__=='__main__':
from win32com.server.register import RegisterServer, UnregisterServer
clsid = "{06ce7630-1d81-11d0-ae37-c2fa70000000}"
progid = "Python.Tools"
verprogid = "Python.Tools.1"
if "--unregister" in sys.argv:
print("Unregistering...")
UnregisterServer(clsid, progid, verprogid)
print("Unregistered OK")
else:
print("Registering COM server...")
RegisterServer(clsid,
"win32com.servers.PythonTools.Tools",
"Python Tools",
progid,
verprogid)
print("Class registered.")