首页 > Python > VB6与Python通过COM组件联合编程

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中打印出结果。

很厉害吧!


上一篇:没有了