110,533
社区成员
发帖
与我相关
我的任务
分享
private static int SiHookProc(int nCode, Int32 wParam, IntPtr lParam)
{
Logger.Main.Debug($"[钩子]开始查找窗口...");
var winPtr = WindowHelper.FindWindow(null, ErrorWinInfos[0]);
if (winPtr != IntPtr.Zero)
{
Logger.Main.Debug($"[钩子]已找到疑似目标窗口[{ErrorWinInfos[0]}]");
StringBuilder text = new StringBuilder(512);
int len = GetWindowText(winPtr, text, text.Capacity);
Logger.Main.Debug($"[钩子]窗口内容:{text.ToString()}");
var lbl = WindowHelper.FindWindowEx(winPtr, IntPtr.Zero, "Static", ErrorWinInfos[1]);
if (lbl != IntPtr.Zero) //说明找对窗口了
{
Logger.Main.Debug($"[钩子]疑似目标窗口存在内容[{ErrorWinInfos[1]}],确定是目标窗口,将对其采取行动");
WindowHelper.PostMessage(winPtr, (uint) (WindowHelper.WindowMessage.CLOSE), IntPtr.Zero, IntPtr.Zero);
}
}
return CallNextHookEx(hSiHook, nCode, wParam, lParam);
}