3

在 C# 中,获取当前进程 ID 和机器名称很简单:

int processID = Process.GetCurrentProcess().Id;
string machineName = Environment.MachineName;

如何在本机 C++ 中检索它们?

4

3 回答 3

6

正如您评论的平台是 Windows 7,WINAPI 提供GetCurrentProcessId()GetComputerName()

简单示例GetComputerName()

const int BUF_SIZE = MAX_COMPUTERNAME_LENGTH + 1;
char buf[BUF_SIZE] = "";
DWORD size = BUF_SIZE;

if (GetComputerNameA(buf, &size)) // Explicitly calling ANSI version.
{
    std::string computer_name(buf, size);
}
else
{
    // Handle failure.
}
于 2012-05-15T13:58:13.110 回答
4

getpid()&& gethostname()- 用于man了解它们的所有信息...

于 2012-05-15T13:55:22.263 回答
1
#ifdef _WIN32
 return GetCurrentProcessId(); 
#else
 return ::getpid();
#endif
于 2016-11-29T05:52:39.850 回答