我编写了用于获取CPU使用率,RAM和的Python脚本 Windows服务器的磁盘使用情况。
然后我将脚本转换为.exe直到在服务器上执行。
.exe在Windows 2008服务器上正常运行,但是它出错了 在Windows 2003上执行时。以下是错误:
BufferedWriter writer =
new BufferedWriter (new FileWriter(".\\Records.txt", true)); // true for appending a text to existing file
这是我的Python脚本:
C:\dist>Monitor_server.exe
Traceback (most recent call last):
File `Monitor_server.py`, line 9, in <module>
File `psutil\__init__.pyo`, line 85, in <module>
File `psutil\_psmswindows.pyo`, line 15, in <module>
File `_psutil_mswindows.pyo`, line 12, in <module>
File `_psutil_mswindows.pyo`, line 10, in __load
ImportError: DLL load failed: The specified procedure could not be found.
答案 0 :(得分:0)
The Windows C module used by psutil包括几个预处理器条件,它们查看正在编译的Windows版本,使其非常特定于该版本。
您需要为不同的主要版本构建一个包。
具体做法是:
现在,让我们看一下compares against the versions of Windows you're using here:
的方式...所以,答案是:Windows Server 2008和Vista上使用的界面在2003年不可用。(您可以在2003年编译并在2008年使用生成的二进制文件,但这将失去新界面的优点)。