草庐IT

CRT_DEBUGGER_HOOK

全部标签

windows - 如何在 Vista 中使用 SetWindowsHookEx 并将管理应用程序与 UAC Hook ?

我正在尝试弄清楚是否有一种方法可以使用SetWindowsHookEx并能够影响在启用了UAC的Vista上以管理员权限运行的应用程序。这是一个需要向其他窗口的标题栏添加一个小按钮以启用一些多显示器感知处理的应用程序。我原以为这不可能完成,但我看到一个应用似乎可以做到这一点。据我所知,其他应用程序没有以管理员权限运行,但它会影响系统中的所有应用程序,包括那些具有管理员权限的应用程序。看来似乎有办法做到这一点,但我不知道该怎么做。我的应用程序只需要能够在窗口标题栏上绘制并能够影响它们的移动和大小。我不需要做任何其他事情。 最佳答案 您

windows - Subversion post commit to tags 钩子(Hook)

我可以让提交后Hook在每次有人检查某些内容时发送一封电子邮件,但我能否将其限制为仅当人们将某些内容检查到标签目录中时?基本上我想要在有人发布版本时收到通知。我的颠覆在Windows上运行。有什么想法吗? 最佳答案 您获得作为提交后Hook的参数提交的repo和修订。使用svnlook获取修订中更改的文件的路径并查看它是否有tags并触发您的电子邮件。svnlookchanged-r$rev$repo上面的代码看起来像Atrunk/app/file.cs使用该信息查看是否添加了标签并在提交后写信

windows - 用本地配置文件替换 Microsoft.VC90.CRT WinSxS 策略文件

在WindowsXP上,我有一个以msvcp90.dll运行的.exe,msvcr90.dll,和Microsoft.VC90.CRT.manifest在我的本地应用程序目录中。我在C:\WINDOWS\WinSxS\Policies中也有这些.dll的策略文件,由VisualC++2008SP1RedistributablePackage安装.我想删除此策略文件并改用本地目录中的应用程序配置文件。策略文件是:我的配置文件是:DependencyWalker在使用配置文件而不是策略文件时同时报告错误-有什么问题吗?另外,配置文件应该命名为.exe.config吗?,或Microsoft

windows - Windows Hook 的 Linux 等价物

我想知道如何表达像windowshook这样的东西在Linux中。我有一个带有各种线程的Linux应用程序。主线程当前为ctrlc安装了一个信号处理程序,捕获它并关闭应用程序。我希望应用程序中的另一个线程首先处理ctrlc事件,然后传递给主线程。 最佳答案 据我所知,这很难做到。Unix信号是原始的。默认情况下,信号会传送到随机线程。为了解决这个问题,通常采用的技巧是在除一个线程之外的所有线程中阻塞信号。最简单的方法是用pthread_sigmask阻塞main中的所有信号,然后创建线程(它将继承信号掩码),然后有一个单独的线程执行

c - 是否可以 Hook 任何时间检索功能

我需要Hook任何试图检索系统时间的函数,以便为不同的应用程序生成“时间无关”的重播。某些事件(如伪随机数生成)取决于对time()的调用,但例如其他一些事件会调用timeGetTime()或_time64()。我需要Hook(在Windows中)以捕获所有时间检索函数的最少函数集是什么。实际上有可能Hook这些功能吗?我试图在time()上完成它,但我的钩子(Hook)被忽略了。我已成功Hook到其他函数(如rand),但我的time()Hook似乎被忽略了。我正在使用Detours,但我愿意使用任何其他API拦截工具。 最佳答案

c++ - Hook WH_CALLWNDPROC 后未收到窗口过程消息

我试过使用全局Hook,但Hook过程只接收到我的程序线程的窗口过程消息,并且针对特定应用程序(线程)导致根本没有消息。我正确地将DLL中的函数用于非本地Hook。这是我的应用程序代码。#include#includeHINSTANCEhinst;LRESULTCALLBACKWindowProc(HWNDhwnd,UINTuMsg,WPARAMwParam,LPARAMlParam);intmain(){HWNDnotepad=FindWindow(NULL,L"Untitled-Notepad");if(!notepad)return0;hinst=GetModuleHandle(

windows - C++ 如何导出地址表 Hook (EAT)?

我将如何进行导出地址表(EAT)Hook?我能够进行IAT(导入地址表)Hook。有人能给我举个例子吗?谢谢! 最佳答案 EATHook遵循与IATHook非常相似的方法,主要区别在于您查看的位置发生了变化,请查看Win32PEformat的PE文件导出部分。.可以找到一个非常简单的(虽然是C语言)示例here,如果确实需要以汇编形式编译和反汇编即可。 关于windows-C++如何导出地址表Hook(EAT)?,我们在StackOverflow上找到一个类似的问题:

windows - Hook Win32 API 事件以在桌面完全加载时收到通知

想象一个场景,当用户登录并且没有注销切换到另一个用户时。然后切换回来。当切换回来时(因为我们从未退出),Windows将首先显示黑色桌面,然后进行一些窗口闪烁(尤其是有2个显示器),最后将所有内容重新安排到我们离开的状态。闪烁和重新排列需要一些时间(大约1秒)。获取有关桌面已完全加载的通知的最有效方法是什么?我需要这个,因为我想在桌面完全加载时调用我的特定功能。一个选项是Hook到WM_PAINT,但我使用了Spy++,我在桌面上得到了12个WM_PAINT事件,所以这并不可靠。有人知道另一种方法吗? 最佳答案 找到了一个简单得多的

c++ - 与 Microsoft CRT 和 OpenMP 静态链接

我正在开发一些有时用于类似嵌入式场景的Windows软件。对于我的用户来说,拥有专用的Win7或Win8PC他们从不更新,甚至不连接到Internet的情况并不少见。用户将这些PC连接到特定的工业硬件,并仅将该系统用于一项工作。我的软件包括我用VisualC++编写的组件。我使用适当的安装程序合并模块将CRT包含在我的MSI包中。不幸的是,对于从未更新过的PC,这不起作用:今天我收到错误报告,应用程序在启动时崩溃,提示“无法启动,因为api-ms-win-crt-stdio-l1-1-0.dll从您的计算机中丢失”Thisanswer建议静态链接到CRT。做到了。但是我的C++代码的某

windows - 用私有(private)实现替换 MSVC CRT 函数

我有一个嵌入式IoT项目,我喜欢首先使用VisualStudio等PC工具进行部分开发。我的嵌入式项目只有一个文件系统的闪存,我想将fopenfread等重定向到我自己在Windows上的私有(private)实现。但我遇到的是无法让我的私有(private)CRT库优先于内置CRT(例如,由/MD编译器开关驱动的内置行为)。我有一个简单的三项目解决方案。项目1是一个测试可执行文件。它有一条主线:intmain(){test();}项目2和3是静态库。项目2有:#include#includevoidtest(){printf("%s\n",strchr("x",'x'));}项目3有