8
回答
python 怎么运行一个新的进程
注册华为云得mate10,2.9折抢先购!>>>   

使用win32api

win32api.WinExec(r'winrar.exe E:\123.rar')

这个总也打不开,提示:

Traceback (most recent call last):

  File "<interactive input>", line 1, in <module>

error: (2, 'WinExec', '\xcf\xb5\xcd\xb3\xd5\xd2\xb2\xbb\xb5\xbd\xd6\xb8\xb6\xa8\xb5\xc4\xce\xc4\xbc\xfe\xa1\xa3'

 应该是“系统找不到指定的文件。"的错误。

但是使用下面这个就可以:

win32api.WinExec(r'F:\Program Files\Tencent\QQ\Bin\QQ.exe')

注:这两个文件都存在

另外lnk文件也打开不了。不知道为什么。

subprocess好像是运行一个子进程。

我用wxpython写了一个小程序,打开一些链接的工具。请问还有什么方法可以实现这个功能(必须是独立的进程,不是子进程)

 

举报
木头r
发帖于6年前 8回/3K+阅
共有8个答案 最后回答: 6年前

引用来自“木头r”的答案

引用来自“lookgotolook”的答案

很清楚嘛 第二个你都指明了路径F:\Program Files\Ten..xxx...exe 所以OK

第一个则没有,只是winrar.exe 加上程序路径看看

在运行里可以直接用winrar.exe运行,cmd.exe也可以,python.exe也可以。

但是WinExec('cmd.exe')和WinExec('python.exe')是可以运行的。

路径补全也只能运行exe文件

win32api.WinExec(r'E:\123.exe')      可以运行

win32api.WinExec(r'E:\123.rar')       不能运行

win32api.WinExec(r'E:\123.txt')      不能运行

win32api.WinExec(r'E:\123.lnk')      不能运行

用ShellExecute

很清楚嘛 第二个你都指明了路径F:\Program Files\Ten..xxx...exe 所以OK

第一个则没有,只是winrar.exe 加上程序路径看看

引用来自“lookgotolook”的答案

很清楚嘛 第二个你都指明了路径F:\Program Files\Ten..xxx...exe 所以OK

第一个则没有,只是winrar.exe 加上程序路径看看

在运行里可以直接用winrar.exe运行,cmd.exe也可以,python.exe也可以。

但是WinExec('cmd.exe')和WinExec('python.exe')是可以运行的。

路径补全也只能运行exe文件

win32api.WinExec(r'E:\123.exe')      可以运行

win32api.WinExec(r'E:\123.rar')       不能运行

win32api.WinExec(r'E:\123.txt')      不能运行

win32api.WinExec(r'E:\123.lnk')      不能运行

引用来自“FreeZ”的答案

引用来自“木头r”的答案

引用来自“lookgotolook”的答案

很清楚嘛 第二个你都指明了路径F:\Program Files\Ten..xxx...exe 所以OK

第一个则没有,只是winrar.exe 加上程序路径看看

在运行里可以直接用winrar.exe运行,cmd.exe也可以,python.exe也可以。

但是WinExec('cmd.exe')和WinExec('python.exe')是可以运行的。

路径补全也只能运行exe文件

win32api.WinExec(r'E:\123.exe')      可以运行

win32api.WinExec(r'E:\123.rar')       不能运行

win32api.WinExec(r'E:\123.txt')      不能运行

win32api.WinExec(r'E:\123.lnk')      不能运行

用ShellExecute
win32api. ShellExecute 可以。谢谢·········

win32api.WinExec(r'E:\123.exe') 可以运行 win32api.WinExec(r'E:\123.rar') 不能运行 win32api.WinExec(r'E:\123.txt') 不能运行 win32api.WinExec(r'E:\123.lnk') 不能运行 

个人还是python菜鸟 纯属猜测: exe是可执行文件 所以可以执行 rar 和 txt 不是可执行文件 需要启动可执行文件来打开 比如 txt要启动notepad。 rar要启动winrar

顶部