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