积极答复者
c# API OpenProcess 返回值为定值

问题
-
- C# code
-
GetWindowThreadProcessId(formHandle, ref lpid); hHandle = OpenProcess(PROCESS_VM_READ | PROCESS_VM_WRITE, false, lpid); StringBuilder path = new StringBuilder(MAX_PATH); lRet = GetModuleFileName(hHandle , path, path.Capacity); CloseHandle(hHandle); string HwndToExePath = path.ToString().Trim();
程序是通过鼠标位置获取窗口句柄从而得到pid的,参数formHandle、lpid都正常,随着鼠标的移动而变化。
上面代码中,hHandle 返回的是定值。为什么不同的lpid进去,得到的hHandle却一样?
答案
-
您好
建議您改用此文作法
[C#]取得滑鼠游標所指到的視窗及其Process Name
http://www.dotblogs.com.tw/larrynung/archive/2011/06/19/29121.aspx
歡迎參觀我的Blog.NET菜鳥自救會
- 已编辑 小歐ouMVP 2012年2月9日 3:33
- 已建议为答案 亂馬客 2012年2月9日 4:41
- 已标记为答案 Bob ShenModerator 2012年2月20日 2:34
-
- 已标记为答案 Bob ShenModerator 2012年2月20日 2:34
全部回复
-
您好
建議您改用此文作法
[C#]取得滑鼠游標所指到的視窗及其Process Name
http://www.dotblogs.com.tw/larrynung/archive/2011/06/19/29121.aspx
歡迎參觀我的Blog.NET菜鳥自救會
- 已编辑 小歐ouMVP 2012年2月9日 3:33
- 已建议为答案 亂馬客 2012年2月9日 4:41
- 已标记为答案 Bob ShenModerator 2012年2月20日 2:34
-
- 已标记为答案 Bob ShenModerator 2012年2月20日 2:34