c++ - 进程后的 CloseHandle 不存在
问题描述
我做了一个简单的例子。
我只想知道在将手柄重新附加到新进程之前是否需要关闭手柄?
DWORD g_dwPid = 0;
HANDLE g_hProcess;
int _tWinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow) {
while (TRUE) {
DWORD dwPid = GetProcessIdByName(L"explorer.exe");
if (dwPid && dwPid != g_dwPid) {
g_dwPid = dwPid;
g_hProcess = ::OpenProcess(PROCESS_ALL_ACCESS, FALSE, g_dwPid);
}
else
CloseHandle(g_hProcess);
Sleep(500);
}
return 0;
}
解决方案
推荐阅读
- python - 将字符串列添加到浮点矩阵 NumPy
- sql-server - 尝试选择不同的值,并且必须格式化日期和排序,就像它在 MS SQL 服务器上的日期时间一样
- python - 边列表中节点的唯一列表
- r - R Leaflet - addPolylines - 不断添加区域名称
- javascript - Ajaxmin MinifyJavascript 在对象前添加 {}
- javascript - reCaptcha 是否与 iFrame 兼容?
- c# - 在父元素中覆盖 DataContext 后在子元素中使用 Window DataContext
- azure-devops - 通过 Graph API 更新用户“必须参考服务操作或实体集”
- javascript - selected-js 生成的默认 WIDTH = 0
- mysql - 如何通过colsfusion从ics文件中提取数据?