用python 实现activex网页控

2023-01-31 05:01:23 python activex 网页

首先,这个东东貌似只有windows上才能实现,所以,需要部署windows下的相关环境

1、需要安装python

2、安装Python的win32com的lib,下载地址:

Http://sourceforge.net/projects/pywin32/files/


3、安装本地的WEB容器,我用的apache的Tomcat


4、编写例子:

import uuid
import win32com.server.reGISter

class PythonUtilities: 
    _public_methods_ = ['SplitString'] 
    _reg_progid_ = "Python.Utilities" 
    #_reg_clsid_ = "{A6688635-62F5-41cb-AF54-CBA84C2F0F86}" 
    _reg_clsid = "{"+uuid.uuid1()+"}"
    def SplitString(self, val): 
        return "Hello world ", val

if __name__ == '__main__': 
    print "Registering COM server..."
    win32com.server.register.UseCommandLine(PythonUtilities)

将这个文件保存到tomcat的webapps下的一个目录中


5、编写测试html页面

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>  
<head>  
	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
	<SCRIPT LANGUAGE="javascript">
		window.onload = function(){ 
		var obj = new ActiveXObject("Python.Utilities"); 

		alert(obj.SplitString("Hello world")); 
		} 
	</SCRIPT>
</head>  
<body>  
</body>  
</html> 

放到python文件的同一个目录


6、到命令行执行该python 代码


7、再请求该网页

相关文章