草庐IT

c++ - Exe 不能在旧版本的 Windows 上运行

我有一个Win32C++应用程序,我已在运行Windows7的PC上使用MicrosoftVisualStudioC++express2010编译该应用程序。该应用程序是在Release模式下编译的,带有\MT运行时标志(多线程)。我的问题:当我尝试在运行WindowsVista的笔记本电脑上运行我的.exe时,应用程序崩溃并且永远不会打开主窗口。我使用的.exe是visualstudio项目的“release”文件夹的输出。我已经检查了应用程序中的大部分win32函数,它们都可以在windows2000及更高版本上运行。我还将VisualStudio项目移到WindowsVista笔

c# - 删除和恢复窗口边框

我想在C#中删除另一个进程的窗口边框;我使用RemoveMenu删除边框。它几乎可以工作,但我还有2个问题:我需要移除边框两次,第一次菜单栏还在存在。我无法恢复菜单的这是我已经写的:publicvoidRemoveBorders(IntPtrWindowHandle,boolRemove){IntPtrMenuHandle=GetMenu(WindowHandle);if(Remove){intcount=GetMenuItemCount(MenuHandle);for(inti=0;i有人可以告诉我我做错了什么吗?我已经尝试保存MenuHandle并稍后恢复它,但这不起作用。

c++ - 在 Windows 上从用户模式程序发送和接收 ARP 数据

(ARP=地址解析协议(protocol)-RFC826)有没有办法通过用户世界程序在Windows上发送和接收ARP流量?在Linux上,我们可以只创建原始套接字来发送ARP流量,但在Windows上,我的研究表明我们需要编写一个可用于发送此类流量的驱动程序。我考虑过使用WinPcap,但它在内部安装了一个可用于发送/接收此类流量的驱动程序。我的问题是:在不安装驱动程序的情况下,Windows是否可以通过任何方式允许发送/接收ARP数据包? 最佳答案 发送ARP数据包的最简单方法是可能使用SendARP.可以,然后使用GetIpN

windows - 在 Win7 登录屏幕上运行应用程序

这个问题在这里已经有了答案:Updated:Interactingwiththeuseronthewindowslogonscreen(3个答案)关闭6年前。我想通过服务在Windows7的登录屏幕上运行应用程序。我对此进行了长期研究并尝试了不同的方法,但不幸的是到目前为止还没有完全成功。我设法在当前登录用户的锁定屏幕上运行该应用程序-起初在我看来这就是我基本上试图实现的目标。然而,我随后意识到每个用户都有不同的登录屏幕和一个普通的登录屏幕(独立于用户)。我的猜测是这个独立于用户的登录屏幕(在多个帐户可用时或在锁定屏幕上单击“切换用户”时在启动后直接出现)在session0中运行,而用

c - 我如何知道外部 DLL 是否进入函数?

我有一个使用外部DLL的Win32应用程序(控制台应用程序)。DLL导出两个函数(Run和SecretFunction),我需要知道DLL何时进入SecretFunction。我在运行时加载DLL(我通过命令行参数获取路径)。我无法使用共享事件。我得到的两个提示是对异常方法使用一些类似的逻辑,并可能使用VirtualQuery/VirtualProtect。有人能指出我正确的方向吗?澄清:我的程序将调用Run函数。Run函数可能调用也可能不调用SecretFunction。我想从我的程序中知道是否调用了SecretFunction。我有以下代码,所以我有函数的地址:pfn_Secret

c++ - 如何要求重新启动 firefox?

我创建了一个C++程序,它还安装了一个Firefox扩展。因此,要使此扩展正常工作,他需要重新启动firefox。那么,我该如何在用户使用firefox时请求重启呢? 最佳答案 这种看起来像是这个问题的重复:winapi-HowcanIgetaprocesshandlebyitsnameinC++.本质上,你要做的是“找到”进程“firefox.exe”(代替“target.exe”),如果找到它成功,你会弹出一个警告对话框来关闭firefox并重新-打开。如果没有,您只需继续安装或其他任何操作。希望这对您有所帮助!

c++ - 如何将 DLL 注入(inject) Delphi 程序

我有一个遗留应用程序,其中包含一个包含我需要提取的数据的网格。我没有该应用程序的代码,并且无法通过正常方式(例如以编程方式选择所有单元格并将它们复制到剪贴板)从中获取数据。所以我决定按照“II.TheCreateRemoteThread&LoadLibraryTechnique”一节中的描述使用DLL注入(inject)http://www.codeproject.com/Articles/4610/Three-Ways-to-Inject-Your-Code-into-Another-Proces我的计划是将DLL加载到遗留应用程序的地址空间。让DLL从网格中读取数据并将它们写出(例

windows - 获取进程总页面错误

任务管理器和SysInternalsProcessExplorer都显示进程页面错误的总数,但我发现的所有性能计数器和WMI对象仅显示每秒页面错误,是否有不同的API或一些晦涩的性能计数器确实显示特定进程的页面错误总数?(在Windows上) 最佳答案 GetProcessMemoryInfo的PROCESS_MEMORY_COUNTERS在PageFaultCount中有一个计数。 关于windows-获取进程总页面错误,我们在StackOverflow上找到一个类似的问题:

c++ - RegOpenKeyEx 返回错误 87 又名 "INVALID_PARAMETER"

我正在使用RegOpenKeyEx、RegDeleteKey和RegEnumKey实现递归注册表删除。问题::虽然代码在Vistax86/x64和Win7x86/x64上工作得很好,但在XP上对于HKCR中的某些键失败问题区域::HKCR\Installer\Products\SomeKey错误代码:87(INVALID_PARAMETER)怪异行为::在我使用REGEDIT打开key时删除key。代码::staticBOOLRcrsvRegDel(HKEYhKey,LPTSTRlpszSub){BOOLbRet=TRUE;LONGlRet;DWORDdwSize=MAX_PATH;T

windows - 在 DirectX/Win API 程序中全屏渲染内部 windows 程序

我想做这样的东西,我将能够在Windows中以全屏模式运行我的内部程序,例如cmd.exe。早些时候,在WindowsXP中,我可以使用Alt+Enter在全屏模式下使用cmd.exe,但在WindowsVista中,由于WDDM(Windows显示驱动程序模型),这种功能被禁用。我认为,制作这种东西的最好方法是:“制作一个全屏DirectX/WinAPI程序,然后在其中渲染另一个内部程序”。我知道如何使用DirectX/WinAPI创建全屏程序,但无法想象如何在我的全屏程序中渲染另一个程序执行。另一种方式是:“只需使用cmd.exe或其他内部程序操作输入/输出流,然后在DirectX