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中打印出结果。
很厉害吧!
上一篇:没有了







