C ++中的进程ID和OS信息

时间:2009-07-30 12:13:04

标签: c++

在python中,我可以使用os.getpid()和os.name()来获取有关进程ID和 操作系统名称C ++中有类似的东西吗?我试过GetProcessId(),但被告知这是未申报的...我在Windows下使用Cygwin。

谢谢

3 个答案:

答案 0 :(得分:3)

标准C ++没有这样的功能。您需要使用特定于操作系统的功能来实现此目的。在您的情况下,您需要查找POSIX / UNIX函数,例如getpid()

请注意,如果您确实想要调用Windows函数来获取进程ID等,那么您应该使用像MinGW这样的C ++环境,它允许您构建本机Windows应用程序,而不是Cygwin,这是更多旨在将POSIX应用程序移植到Windows。

答案 1 :(得分:1)

要使用GetProcessId,您需要包含Windows.h并链接到Kernel32.lib。有关详细信息,请参阅Process and Thread Functions

我使用MSYS/mingw代替cygwin。因此,您可能需要安装w32api软件包。

答案 2 :(得分:0)

我推荐Hart的书“Win32系统编程”。如果你刚刚开始研究Windows编程,那么就如何在Kernel32中管理进程,内存,文件等进行讨论。您还可以获得免费版的Visual Studio(http://www.microsoft.com/express/)。