二进制的c++ Windows进程ID
C++ Windows process ID in binary
我想在Windows上用c++将程序的进程ID(由程序本身)写在一个文件中(首选二进制)。我看到了GetProcessId函数的用法,但我没有设法使用它。
1)如何使用?
2)如何将值转换成二进制并写入文件?
谢谢
可以使用GetCurrentProcessId()
获取当前进程的进程id。然后您可以使用ultoa
将该数字转换为使用基数2
(和大小为sizeof(DWORD) * 8 + 1
的缓冲区)的字符串,然后您可以使用ofstream
或fwrite
将其写入文件。
的例子:
DWORD id = GetCurrentProcessId();
char buf[sizeof(DWORD) * 8 + 1];
ultoa(id, buf, 2);
ofstream f("file.txt");
f << id;
我假设通过"将值转换为二进制",您的意思是将其转换为表示形式,以便当您打开文件时,它看起来像1001011110101
或其他东西。如果你只是想把它看作一个数字,那么不要使用itoa
,而是做其余的。
通过调用GetCurrentProcessId()
获取进程ID。您不需要将其转换为二进制表示,因为整型已经存储在二进制中。
相关文章:
- 无法获取进程 ID 4 (ntoskrnl.exe) 的可执行路径
- 为什么if(fork()==0){getpid()}和popen()进程返回相同的进程id
- 从 C++ 中的二进制路径(命令行语句)获取进程 ID
- 使用进程 ID 终止进程
- C++ 通过进程 ID 获取进程的名称
- 按名称查找进程 ID 的快速方法
- WinEventHook未捕获特定进程id中的事件
- 视觉C++从父进程 ID 获取子进程 ID
- 获取 Winlogon.exe 的会话 ID 和进程 ID
- 如何在浏览器子进程主机Impl->启动后获取浏览器子进程的进程ID
- 如何在进程间通信中获取其他终结点的进程 ID
- 父级的父级的进程 ID - Linux
- 在检查进程 ID 时使用 WaitForSingleObject 的好处
- C++:通过进程id、进程句柄和标题名称从进程中获取唯一窗口的窗口句柄的最佳方法
- PIN - 获取正在检测的二进制文件的进程 ID
- C++ 获取进程 ID 获取本地 ID(如果目标进程未打开)
- 如何使用 boost.log 以 dec 格式打印进程 ID 和线程 ID
- 如何在C++中获取当前进程 ID 和计算机名称
- 如何获取由 popen 创建的进程 ID
- 如何使用JNI获取浏览器上当前活动选项卡的进程ID