草庐IT

c - 如何检测内存数据是否已更改?

我正在学习windows编程,有一些疑问。我看到了一个保护内存数据的安全模块。如果一个进程要更改其他进程的内存,它会检测并关闭该进程。这在游戏或银行应用程序中经常用于反CheatEngine(我住在韩国,所以我认为这是最好的例子。几乎每个在线游戏或银行应用程序都有self防御算法。)我的问题是,是否有任何API或函数可以检测到这一点?谢谢。附言我可以举个例子,如果0x01000000内存数据是'A',一些不同的进程将其更改为'B'。当我第一次想到这个时,我认为我必须创建一个线程来检查数据,如果它发生变化,则关闭该进程。但我认为这不是一个好主意。有什么建议吗?

windows - 扫描 Windows 上已安装的软件

有什么方法可以比使用WMI更快地扫描和查询Windows上已安装的软件?? 最佳答案 如果您有足够的权限,您可以扫描本地注册表。相关条目应该是:HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\UninstallHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\UninstallHKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\

windows - 在 Windows 中,如何将原始字符恢复为已替换为十六进制 ASCII 的 csv 文件?

我有一个csv文件,其中包含像O'Brien这样显示为O%27Brien或St.Something显示为St%2ESomething的名称。我无权生成此数据的新csv,我需要格式正确的名称,因为我正在编写PowerShell脚本来搜索另一台服务器上的名称。我尝试实现类似于this的答案的东西但我无法让它解决我遇到的问题。只要我可以在Windows7上运行,PowerShell中的解决方案对我来说并不重要。 最佳答案 使用Uri.UnescapeDataString您可以像这样从powershell调用的方法:#>[Uri]::Une

c# - Windows.UI.ViewManagement.ApplicationView.TryUnsnap() 已过时

boolisSnapped;asyncvoidEnsureUnsnapped(){//FilePickerAPIswillnotworkiftheapplicationisin//asnappedstate//IfanappwantstoshowaFilePickerwhilesnapped,it//mustattempttounsnapfirstboolunsnapped=((Windows.UI.ViewManagement.ApplicationView.Value!=Windows.UI.ViewManagement.ApplicationViewState.Snapped)|

c++ - Eclipse CDT - 如何在外部控制台 (cmd.exe) 中运行已编译的 .exe

有没有办法在EclipseIDE中运行已编译的CDT程序,但不是在Eclipse终端中,而是在新的cmd.exe窗口中?一些运行配置或外部工具配置?就像在QT中一样,当您运行已编译的控制台应用程序时。我在谷歌上搜索了这个,在我看来,一个简单的问题,但是(对我来说很奇怪)我没有找到答案。 最佳答案 来自EclipseCDT论坛,来自MrKlaus:编辑运行配置:在主页上将C/C++Application设置为:${system_path:cmd.exe}在Arguments页面添加(调整路径和程序名称):/C"start.\Debug

c++ - 检测文件是否已更改的可靠方法

我认为我的用例还没有回答这个问题。我们希望在不重新读取文件内容的情况下检测用户是否更改了文件,以便缓存基于文件内容的计算结果。我们的程序是一个长期运行的程序,它允许用户单击一个按钮以根据程序中输入的数据和存储在外部文件中的数据执行计算(抱歉,我不能说得更具体)。外部数据需要读取、处理,需要基于它构建各种数据结构,所以我们尝试在计算之间缓存这些数据,以加快用户在程序本身更改数据时重新计算的速度,而不是数据本身在外部文件中。但是,如果外部文件发生变化,我们必须重新读取它。对于每个外部资源,我们正在检查修改时间和文件大小是否发生了变化,但这并不是那么可靠,如果用户发生了变化,例如,可能会导致

windows - 安装已删除的 Windows 功能

我正在使用来自WindowsServer2016的镜像,该镜像已删除所有额外的Windows功能。我正在尝试添加使其成为域Controller“ad-domain-services”所需的功能,但它总是出错,给我一个错误,说“无法下载源文件”。我安装了WindowsServer2016ISO并尝试了以下命令。你怎么知道你需要从哪里导入特征?Install-WindowsFeaturead-domain-services-Source'D:\sources\sxs'Install-WindowsFeaturead-domain-services-Source'wim:D:\sources

windows - Wix 工具包 - MSI 安装程序 - 启动已安装的应用程序时,窗口的弹出窗口不断出现

我有一个WiX脚本,它创建一个安装程序,在MicrosoftWindows7和10机器上静默安装应用程序。没有选项,因此不需要GUI。一些客户提示说,当他们启动已安装的应用程序时(在成功安装很久之后),Windows会弹出MSI安装程序消息“Windows正在配置[APPLICATION_NAME],请稍候”。他们说每次都会发生这种情况,并且它的运行时间与最初安装所花的时间差不多。我过去常常得到这个,并认为这是因为一些安装的文件已被修改。我的结论是,当MSI第二次和后续运行时,它会用安装程序中的原始文件覆盖修改后的文件。因为这些文件打算在安装后进行修改,所以我在它们的组件定义中添加了“

c# - 如何检查是否已从 c# 安装了 Windows QFE/补丁?

在C#中确定是否已安装给定QFE/补丁的最佳方法是什么? 最佳答案 使用WMI并检查Win32_QuickFixEngineering枚举。来自TechNet:strComputer="."SetobjWMIService=GetObject("winmgmts:"_&"{impersonationLevel=impersonate}!\\"&strComputer&"\root\cimv2")SetcolQuickFixes=objWMIService.ExecQuery_("Select*fromWin32_QuickFixEn

windows - 在 Windows 中跟踪已启动的应用程序

我们正在尝试整合信息亭解决方案,以便我们可以按小时为人们使用的应用程序收费。因此,我们需要一种方法来确定应用程序何时启动,何时关闭并记录此信息以进行计费。我是一个相当有经验的.NET程序员,所以托管代码解决方案会很棒。我也稍微涉足了WindowsAPI,所以这也可能有效。有什么想法吗? 最佳答案 这对于WMI调用来说已经足够简单了。实际上,您可以从操作系统捕获有关应用程序何时启动、何时关闭、运行了多长时间、使用了多少内存等的事件。这里是监控进程创建、删除等的一个例子。http://weblogs.asp.net/whaggard/a