VB6与Python通过COM组件联合编程
Python 2023-01-30
因为VB6提供了非常方便的“所见即所得”的界面方法,Python有强大的编程功能。
所以我们就使用COM组件,让VB6的界面与Python的功能联系在一起。
书上说:COM组件服务是提供一种独立于平台与编程语言之外的,共享二进制代码的方法。
翻译成人话:COM组件可以让不同的编程语言之间互相通信,至于它们之间说英语还是法语,我们现在不用关心。
先给大家两小段基本的代码,先理解原理,其它的就好办了。
1、先用Python注册COM服务,并在Python服务中写一个最简单的加法函数。
# coding=UTF8 #需要先安装pypiwin32模块 和pywin32模块 import pythoncom class PythonDemo: _public_methods_ = ['Test'] _reg_progid_ = 'Demos' # clsid=pythoncom.CreateGuid()#先用这个函数注册一个clsid _reg_clsid_ = clsid def Test(self, val, val2): val = val + val2 return val if __name__ == '__main__': import win32com.server.register print('启动COM服务.') win32com.server.register.UseCommandLine(PythonDemo)
2、到VB6中设计一个简单的界面,写几行代码。
Private Sub Command1_Click() Set PythonUtils = CreateObject("Demos") a = Val(Text1.Text) b = Val(Text2.Text) response = PythonUtils.Test(a, b) Print response End Sub
3、先运行Python代码,然后WINDOWS要多管闲事的问一下,这个程序你让不让他运行。
点“是”就可以启动COM组件服务,再到VB6中调用即可。
在VB6界面中输入1和2,在Python中计算加法,VB6中打印出结果。
很厉害吧!
上一篇:没有了