草庐IT

修改频段

全部标签

c++ - 在没有源代码访问权限的情况下修改旧 Windows 程序以在按键后不调用退出

我有一个较旧的C++Windows程序,我被要求在一个学生项目的kiosk风格环境中运行。在主菜单中,按ESC将退出程序,这是不可取的。在过去,我会捕获键盘中断或其他任何东西,并在可能决定所有这些的case语句中引用JMP或CALL的情况下挖掘NOOP,但在Windows上,一切都经过各种注册的事件处理程序,我还没有大约10年没有完成任何Windows内部工作。是否有一个很好的工具可以在某些WM_EVENT(WM_KEYDOWN是主要目标)消息或类似消息上对程序进行断点,以便我可以缩小可执行文件中进行检查的位置?我目前正在退出各种线程清理和最终退出调用之前进行的各种潜在系统调用,但似乎

windows - 修改NTFS主文件表(MFT)中的文件记录失败

我正在编写一个程序来删除WindowsNTFS卷中的文件和所有相关属性(包括0x30$FILE_NAME、0x80$DATA、0x90$INDEX_ROOT和0xA0$INDEX_ALLOCATION等)。我现在可以找到任何文件的文件记录位置。我会多次覆盖文件记录以防止恢复,然后我放回文件记录的基本信息(即第一个属性“0x10$STANDARD_INFORMATION”的标准属性头)。我用了WriteFile()写入文件记录,返回值表示函数成功。之后,用WinHex打开磁盘查看原始数据,可以看到FileRecordactuallyISmodified。但问题是,我又删除了两三个文件后,

ruby-on-rails - Ruby 和 Ruby on Rails Windows 安装程序修改了哪些注册表值?

我使用的是Windows7和Windows2008Server。我使用了Ruby和RubyonRails一键安装程序。安装程序会修改和创建哪些注册表项?谢谢! 最佳答案 这取决于您选择的复选框。一切都在安装程序本身的源代码中。SYSTEM\CurrentControlSet\Control\SessionManager\Environment(管理员)或Environment(普通用户),在PATH和路径。SourceSoftware\Classes用于.rb、.rbw以及RubyFile和RubyFileWHKLM或HKCU。So

c# - 我的应用程序是否可以显示时间,而不管系统时间是否已被修改

另外我想问一下,如果我的应用程序没有运行,那么我可以创建一个守护进程来对此进行检查(假设这个进程一直在运行)。情况是这样的:用户将系统日期从2012年1月1日更改为2013年1月1日,但应用程序仍应使用2012年1月1日。我使用的是Windows操作系统。 最佳答案 不依赖系统时间或外部来源(网络服务或NTP),没有可靠的方法来跟踪时间,因为日期可能会被用户以多种不同方式篡改。您假定的通过后台服务跟踪时间的选项无法阻止重启期间的时间更改(例如从BIOS),那么保持内部时间的目的是什么?与版权保护系统(如试用时限)有关?如果是这样,你

c++ - 同步独立的应用程序。 (如何在运行时检查文件是否被另一个程序修改)

用例子更容易解释。当2个文本编辑器同时编辑同一个文本文件时,当一个编辑器保存文件时,另一个知道它被修改并要求做smth。如何获得一个文件在程序外被修改的信号?我正在使用C++(尽管我认为它并不重要)和Linux。(Windows的解决方案也很好) 最佳答案 ISO-C++不提供此功能,因此您必须坚持使用操作系统提供的功能。在Linux上是inotify,在Windows上你会使用directorychangenotifications. 关于c++-同步独立的应用程序。(如何在运行时检查

windows - 修改for循环批处理文件中的变量

您好,我正在尝试制作一个批处理文件,它会挖掘一个目录并检查其子目录中的所有文件是否与另一个目录中的文件相同(具有相同的名称和相同的子目录名称)例如:C:/Users/Administrator/desktop/directory1/global/config/project.configC:/directory2/global/config/project.config我能够获取所有需要与for循环进行比较的文件echo%%f给了我一条像这样的路径:C:/Users/Administrator/directory1/global/config/project.config但我想删除开头

ruby - 打开文件后检查文件是否在关闭时被修改

我想知道我的做法是否正确。defcheckoutclone=system("svnexport#{file}tmp/")open_file=system("starttmp/#{@file}")end现在,我可以使用默认编辑器打开我想要的文件,但如何记录文件在关闭前是否被修改。我应该创建一个Process并执行Process.wait还是什么?谢谢你的帮助 最佳答案 使用File::mtime方法相同。ReturnsthemodificationtimeforthenamedfileasaTimeobject.file_time_b

windows - 修改文本突出显示如何工作?

我们都熟悉文本高亮。您将鼠标悬停在Windows操作系统上任何应用程序中的任何“文本”上,您的光标会变成I-Beam,您可以单击并拖动文本以突出显示它。可以将此突出显示的文本复制到剪贴板以备后用。某些应用程序通过更改颜色、不透明度甚至形状来修改默认突出显示行为。一些应用程序允许列选择(例如VisualStudio“alt-click-drag”创建类似突出显示的框)我已经搜索了Internet的深处,但我似乎无法找到可靠的信息来源来解释如何修改文本突出显示的行为。我将如何实现列/block文本选择,以及修改已编译应用程序中突出显示文本的外观。 最佳答案

c++ - 修改编译后的可执行内存分配

我有一个无法访问源代码的已编译可执行文件。每次运行时,都会将一个变量分配给内存地址0x7B008C。我试图让它每次都使用不同的地址而不是那个地址。它不必是动态的,因为我的目的只是破坏当前存在的修改源程序行为的应用程序。所以我的问题是,在不破坏程序行为的情况下实现这一目标的最简单方法是什么? 最佳答案 一般来说,你不能。编译可执行文件时,链接器在机器代码中将对静态变量的引用解析为变量的原始地址。没有迹象表明存在这样的引用,并且由于x86机器代码的性质,以后很难找到这些引用(您不一定能清楚地知道指令从哪里开始)。此外,您不知道那是否只是

Python pip修改镜像源为豆瓣源的两种方法

Pythonpip修改镜像源为豆瓣源常常遇到pip装包时速度过慢或者无法安装(请求超时)等问题,这个时候你就需要考虑一下给pip换源了一、临时的方法pip-ihttps://pypi.doubanio.com/simple-ihttps://pypi.douban.com/simplepipinstall-rrequirements.txtor"packagename"-ihttps://pypi.douban.com/simplepipinstall-rrequirements.txtor"packagename"-ihttps://pypi.doubanio.com/simplepipin