| Server IP : 123.56.80.60 / Your IP : 216.73.216.78 Web Server : Apache/2.4.54 (Win32) OpenSSL/1.1.1s PHP/7.4.33 mod_fcgid/2.3.10-dev System : Windows NT iZhx3sob14hnz7Z 10.0 build 14393 (Windows Server 2016) i586 User : SYSTEM ( 0) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/Program Files (x86)/Alibaba/Aegis/PythonLoaderTemp/third_party/win32com/servers/ |
Upload File : |
"""Python.Interpreter COM Server
This module implements a very very simple COM server which
exposes the Python interpreter.
This is designed more as a demonstration than a full blown COM server.
General functionality and Error handling are both limited.
To use this object, ensure it is registered by running this module
from Python.exe. Then, from Visual Basic, use "CreateObject('Python.Interpreter')",
and call its methods!
"""
from win32com.server.exception import Exception
import winerror
# Expose the Python interpreter.
class Interpreter:
"""The interpreter object exposed via COM
"""
_public_methods_ = [ 'Exec', 'Eval' ]
# All registration stuff to support fully automatic register/unregister
_reg_verprogid_ = "Python.Interpreter.2"
_reg_progid_ = "Python.Interpreter"
_reg_desc_ = "Python Interpreter"
_reg_clsid_ = "{30BD3490-2632-11cf-AD5B-524153480001}"
_reg_class_spec_ = "win32com.servers.interp.Interpreter"
def __init__(self):
self.dict = {}
def Eval(self, exp):
"""Evaluate an expression.
"""
if type(exp) not in [str, unicode]:
raise Exception(desc="Must be a string",scode=winerror.DISP_E_TYPEMISMATCH)
return eval(str(exp), self.dict)
def Exec(self, exp):
"""Execute a statement.
"""
if type(exp) not in [str, unicode]:
raise Exception(desc="Must be a string",scode=winerror.DISP_E_TYPEMISMATCH)
exec str(exp) in self.dict
def Register():
import win32com.server.register
return win32com.server.register.UseCommandLine(Interpreter)
if __name__=='__main__':
print "Registering COM server..."
Register()