重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
通过检查进程的编号。如果进程还在就是活着的。
创新互联是一家专注于成都网站制作、成都做网站、外贸营销网站建设与策划设计,卫辉网站建设哪家好?创新互联做网站,专注于网站建设十载,网设计领域的专业建站公司;建站业务涵盖:卫辉等地区。卫辉做网站价格咨询:13518219792
在python设置输出,每执行一段代码就写一个状态标志到文件里。VB定期检查文件内容就可以
通过操作系统的信号event传递参数
通过消息 队列,SOCKET,管道,共享内存等RPC的手段了解它的状态。
开启调试模式。直接访问python进程的地址,找到关键变量,检查它的状态。
#需要先安装pipywin32模块
class PythonUtilities:
_public_methods_=['SplitString']
_reg_progid_='PythonDemos.Utilities'
# 使用"print (pythoncom.CreateGuid())" 得到一个自己的clsid,不要用下面这个!!
_reg_clsid_='{5FCAC95E-653A-484C-8568-A02D5E0256E8}'
def SplitString(self, val, item=None):
import string
if item !=None: item=str(item)
val=str(val)
return val.split(item)
if __name__=='__main__':
print ('Registering COM server...')
import win32com.server.register
win32com.server.register.UseCommandLine(PythonUtilities)
下面是VB的相关代码:
Private Sub Form_Load()
Set PythonUtils = CreateObject("PythonDemos.Utilities")
response = PythonUtils.SplitString("Hello from VB")
For Each Item In response
MsgBox Item
Next
End Sub
完成后在cmd中使用(py_name是上面python文件的名称)
python py_name.py --unregister
已有一个Python脚本实现了部分功能,想使用VBA直接调用Python脚本
Python脚本如下:
[python] view plain copy
import time
def hello(name):
return "Hello, " + name + "!"
print hello("World")
#延时关闭windows控制台,使得用户可以看到运行结果
time.sleep(150);
方法如下:
[python] view plain copy
pre name="code" class="vb"Sub test()
Call Shell("C:\Python27\Python.exe C:\Users\Hongxing\Desktop\py2exe\Hello.py", vbNormalFocus)
End Sub
vb跟python之间没有一个可交互的桥梁,所以是不能实现混合编程的。不过VS2019已经完美支持python,也许Python跟VB.net混合编程会成为可能。