netcfg可以在cmd中运行,但在python 的os.system函数中执行却找不到该应用程序
来源:互联网 发布:威锋论坛mac讨论区 编辑:程序博客网 时间:2024/04/29 19:25
(1)netcfg可以在cmd中运行,但在python 的os.system函数中执行却找不到该应用程序
Python代码:
import osif __name__=="__main__": print("start...") os.system("netcfg") print("finished!!!")
运行Python代码效果:
在cmd中直接运行netcfg效果:
可以看到在cmd中并没有报找不到netcfg的错误,而且在C:/Windows/System32中也确实有netcfg.exe这个文件。
(2)将 C:/Windows/System32 中的netcfg.exe文件复制一份到 C:/Windows/SysWOW64 文件夹下
再运行上面的Python代码,效果如下:
可以看到,(1)中的问题被解决了。。。。。。。。。。但,不知为何。
更正:
后续测试发现,(2)中的解决方案仅仅是程序运行没有报错,其实是netcfg根本就没有正常运行起来
安装64位的python后(1)中的问题才被正常解决。
补充1:
后续测试又发现,使用32位的python访问windows命令时,会被自动重定向到C:\Windows\SysWOW64文件夹中(32位的命令),如果在C:\Windows\SysWOW64文件夹中没有找到相关的命令,就会报(1)中的错误。
如果想在32位的python中直接访问C:\Windows\System32文件夹中64位的命令,则应该使用C:\Windows\SysNative这个虚拟路径来访问。
举例:在32位的python中使用os.system 访问 C:\Windows\System32\netcfg.exe ----> 系统实际上会去访问 C:\Windows\SysWOW64\netcfg.exe
访问 C:\Windows\SysNative\netcfg.exe ----> 系统实际上会去访问 C:\Windows\System32\netcfg.exe
参考资料:
(1)https://stackoverflow.com/questions/5144402/nothing-returned-when-using-32-bit-python-os-popen-on-a-64-bit-windows-7-system
(2)http://leonax.net/p/2601/magic-of-sysnative-folder/
- netcfg可以在cmd中运行,但在python 的os.system函数中执行却找不到该应用程序
- jar在cmd中可以运行但无法双击打开的解决办法
- 实用的 Python —— os.system() 在 python 语句中执行 dos 命令
- android apk编译时可以找到的资源,但在运行时却找不到出错Resources$NotFoundException
- Java程序在Eclipse中可以运行,在命令行中却提示错误,找不到或无法加载主类!
- 在CMD命令行中运行python脚本
- 在cmd中运行.py文件: python
- Python脚本在cmd中运行步骤
- win10下Java程序在cmd中能够编译却无法运行的解决方法
- mkdir是windows的一个命令,也就是在命令行可以直接运行的命令。如果你在命令行中可以直接执行"python" 那么就可以替换执行
- cmd中可以运行java,但不能运行javac命令
- Python中使用os.system函数运行其他程序
- .NET添加引用后,但在代码中使用using时却找不到命名空间?
- .NET添加引用后,但在代码中使用using时却找不到命名空间?
- 在CMD中,运行.java的文件
- cmd中可以运行java,但不能用javac
- 在cmd中运行程序
- 在cmd中运行vim
- 关于数据块的回滚和事物的回滚
- Python语句结构
- jqgrid获取原始数据,js对象拷贝
- Eclipse 和 Myeclipse插件安装方法
- C/S架构系统自动化测试入门
- netcfg可以在cmd中运行,但在python 的os.system函数中执行却找不到该应用程序
- cookie和session的原理
- WebService到底是什么?(保证看一遍就懂)
- Pdf转成图片
- [shell] if else以及大于、小于、等于逻辑表达式
- 经典的开源编码器X264/X265是否真的无法超越?
- C#调试DLL, 定位到源码
- 伽瑪校正 (Gamma Correction)
- 关于input属性的居中问题