草庐IT

g_shell_hook

全部标签

windows - x64 系统中的 SSDT Hook 替代方案

我读了一点,发现在Windows7x64系统中使用驱动程序的SSDTHook更难,这是故意的,因为在x32系统中不会发生补丁保护/驱动程序签名。那么,x64系统还有其他选择吗?我的意思是,还有其他方法可以达到相同的结果吗?(全局Hook一个ntdllapi) 最佳答案 您可以使用DLLInjection实现用户模式Hook方法,因为这适用于x86和x64。如果您想使Hook全局化,您需要将DLL注入(inject)每个进程,包括新创建的进程。 关于windows-x64系统中的SSDTH

如何使用Shell脚本创建多个目录

我是Shell脚本的新手,我正在尝试在特定位置使用脚本创建多个目录。我对此一无所知,我在此处给我到目前为止尝试过的东西,directory_name="/home/usw9bls7/lib1"if[-d$directory_name]thenecho"Directoryalreadyexists"elsemkdir$directory_namefiIhavetocreatedirectoryatlocations"/home/usw9bls7/config1""/home/usw9bls7/DNQ/lib1""/home/usw9bls7/DNQ/config1"褶皱有帮助看答案不要将“如果”

c++ - 是否有可能在 Windows 上防止其他应用程序 Hook 系统 DLL

我正在拼命寻找我的基于Qt的应用程序崩溃的原因。经过一些观察我发现,即使没有选择任何文件,仅打开QFileDialog(标准的Windows文件对话框)也会导致应用程序在几分钟后崩溃。它不会发生在所有机器上。我已经在dependencywalker中打开了我的应用程序,分析显示,打开文件对话框会加载大量DLL,我的应用程序中不需要它们——所有挂接在windowsshell中的工具。其中-TortoiseSVN,它甚至依赖于卡住。是否有可能在应用程序上下文中阻止加载其他DLL,例如编解码器或shell-hooks?是否至少可以创建一个QFileDialog而无需加载所有与WindowsH

c++ - 如何使用 Win32 Hook 模拟 Alt+Tab?

我使用VS2010编写了这个C++程序来检测用户何时双击鼠标中键、切换到下一个窗口(如Alt+Tab所做的那样)并停止Hook链。这是我的代码:动态链接库:extern"C"__declspec(dllexport)LRESULTCALLBACKHookProc(intnCode,WPARAMwParam,LPARAMlParam){if(nCode执行文件:do{nMenu=choose();switch(nMenu){case1:hLib=LoadLibrary(cLibName);hProc=(HOOKPROC)GetProcAddress(hLib,"HookProc");hH

windows - 关于 SetWindowsHookEx() 和 Hook 的问题

这里是一些背景信息。我正在通过AppInit_DLLs注册表项替换已在dll注入(inject)技术中使用的dll。它的目的是出现在每个进程中,并在GDI32.dll中设置Hook以收集有关打印的信息。这是一种获得我们想要的东西的时髦方式。.dll本身已有10多年的历史(用VisualStudio97编写),我们想用比注入(inject)的dll侵入性更小的东西替换它。看起来SetWindowsHookEx()可能就是我们要找的东西。我一直遇到一些麻烦,但我也和同事讨论过这棵树是否值得吠叫。以下是一些我们无法确定的问题:当我们从dllHook例程时,例如来自GDI32.dll的Star

windows - 如何创建与我的 shell 在同一进程中运行的 Powershell 别名(或函数或 cmdlet)?

在Unix中,我创建了很多别名/函数。这是我的工作流程:*Ihaveafilenamed'aliases.txt'inmy$HOMEdirectory*Ihaveaquickcommandtoeditthatfile*Ihaveanaliasnamed'sa'thatsourcesthataliasfile.I.e.aliassa='.$HOME/aliases.txt这样我就可以快速轻松地创建、修改和使用新别名。我试图在Powershell中重新创建相同的工作流程,但它不起作用。我的$HOME目录中有aliases.ps1文件。我尝试创建一个“sa”别名,但Powershell别名当

windows - Windows 7 shell 中未完全显示可执行版本

根据WinAPI可执行文件可能包含资源部分。一种常见的资源类型是版本信息(VERSIONINFO)。它由一个固定部分组成,另外它还可以包含任意数量的字符串条目(成对的名称+值)。我的构建环境是这样安排的,无论何时我构建一个可执行文件——它的版本信息都会自动调整以反射(reflect)源代码管理的当前状态。以便它始终包含其构建信息。直到上个月,当我还在旧的XP机器上工作时,我可以右键单击任何这样的可执行文件,选择属性/版本,然后-瞧!我可以看到所有构建信息。但最近我将我的机器升级到Windows7。而且,正如所发现的那样,它不再显示丰富的版本信息。它仅显示固定版本信息部分。有人知道这是否

c# - 使用 C# 将 Shell 集成到 Windows 中以获取特定文件类型

因此,我搜索了有关如何将您的应用程序与C#进行外壳集成(将其添加到右键单击菜单)的指南,但我找不到如何仅针对特定文件类型执行此操作。我知道这是可能的,因为WinRar做到了。那我该怎么做呢? 最佳答案 通常有两种方法可以实现这一点。注册表项-您可以在HKEY_CLASSES_ROOT下写入键和值。如果你查看那个配置单元,你会在你的电脑上看到扩展。看这个article有关键和值的详细信息。在这里可以使用一些简单的选项,例如使用您的应用程序打开.myfile类型的选项。这是一个FileAssociationExampleShell扩展(

windows - 什么是子类化和 API Hook ?

我是WindowsAPI编程的新手,我想通俗地了解什么是子类化和APIHook。我正在做一个使用所有者绘制的控件的项目,并且不断出现两个术语。现在我已经在CodeProject.com上看到了很多关于这些主题的详细教程,但问题是它们都使用MFC,而我是在纯Win32中编码的。如果有人知道上述主题的任何好的教程,请发布链接。还要尽量避免链接到msdn,作为新手,我很难理解那里写的内容。 最佳答案 通俗点说:子类化就是通过替换一个窗口的窗口过程来实现的。它将Windows为将消息传递到窗口而进行的调用重定向到您的函数,以便您首先看到这些

windows - 使用脚本在 cmd 或 shell 中终止进程

如何在Windows中使用shell或命令行脚本来检查某些进程的状态,即。Tomcat服务器,如果它存在,它会杀死它吗? 最佳答案 在window上你可以制作一个包含以下内容的.bat文件:TASKKILL/F/IM"program_name.exe"将program_name替换为您要终止的程序。这是关于TASKKILL的一篇不错的文章或者如果它只是tomcat,你可以运行shutdown.bat...如果未设置TOMCAT_HOME,则从tomcat主目录运行它。 关于windows