草庐IT

注册表修改

全部标签

c++ - 如何更改注册表项的 ACL? (C++)

我需要删除注册表项。它在SetValue上有一个拒绝ACL(我需要这个权限才能删除它)。如何在C++中更改ACL? 最佳答案 您可以使用RegSetKeySecurity来调整安全设置,然后照常删除key。 关于c++-如何更改注册表项的ACL?(C++),我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/302314/

用于复制和修改包含重定向字符的文件的 Windows 批处理脚本

我们正在尝试将bashshell脚本转换为Windows批处理脚本。我们将这些脚本与我们的软件产品一起提供,我们不能假设客户将拥有或能够下载sed/awk/cygwin或任何其他非标准工具。因此,该脚本必须适用于Windows开箱即用的任何工具。最低目标平台是WindowsXPSP2。此脚本是从另一个批处理脚本调用的。脚本的一部分需要在文件中搜索特定字符串并修改该字符串。在bash中,这很容易。我们在Windows批处理脚本中采用的方法是逐行遍历文件。如果某行不包含目标字符串,我们会按原样将其回显到临时文件。如果一行包含目标字符串,我们会将硬编码字符串回显到临时文件。问题是输入文件的某

java - 使用 java.util.prefs.Preferences 处理 Windows 注册表

我有一些关于注册表的问题。我们有Preferencesp=Preferences.userRoot();如果我们执行p.nodeExists("/HKEY_CURRENT_USER/Software/Policies/Microsoft")它将返回true。之后:p=p.node("/HKEY_CURRENT_USER/Software/Policies");for(Strings:p.childrenNames()){System.out.println(">"+s);}我们看到它有一个child:“Windows”。但是p.nodeExists("/HKEY_CURRENT_USE

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

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

c - NT 注册表句柄行为

我正在做一个应用程序虚拟化项目。所以我在NT级别挂接应用程序并将注册表调用定向到我的虚拟注册表。在运行任何应用程序时,如果我转到"file"->“打开”。我几乎没有像下面这样的注册表调用:ZwOpenKey(registrykeypath)->它生成句柄ex:(0x04e8)ZwQueryKey(0x4ea,...)ProcessMonitor说打开和查询都是在同一个键上执行的。我自己测试确认是同一个key。查询键也为查询键api生成了正确的结果。这2个字节的差异并不适用于所有打开和查询键的情况。应用程序如何以及为何在调用querykey之前将句柄从0x4e8更改为0x4ea?我还测试

windows - 记录进程读取/写入的所有注册表项

如何“记录”进程访问了哪些注册表项?我可以使用ProcessExplorer或类似工具来执行此操作吗? 最佳答案 ProcessMonitor 关于windows-记录进程读取/写入的所有注册表项,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/5730289/

.net - 如何在注册表中存储 SecureString?

我想在注册表中存储一个System.SecureString。那可能吗?我将如何着手去做?下次运行时我的程序是否能够再次解密字符串? 最佳答案 如果没有辅助层,就不可能以加密形式进行操作。它本身不支持任何形式的序列化,实际上甚至无法以其原生形式进行检查。要从中获取任何信息,您需要通过PInvoke或SecureStringToBSTRAPI。这两者都可以让您以未加密的形式访问string。我可以看到这个工作的一种方式是通过SecureStringToBSTR将SecureString转换为BSTR加密BSTR将结果存储在注册表中当然

c++ - 如何在 C++ Builder 中将注册表导出到 *.reg 文件?

我正在使用reg->SaveKey("Software","D:\1.reg")。但是得到空文件,没有数据。void__fastcallTForm1::Button2Click(TObject*Sender){TRegistry*reg=newTRegistry(KEY_READ);reg->RootKey=HKEY_LOCAL_MACHINE;reg->OpenKey("Software",0);;reg->SaveKey("Software","D:\\1.reg");deletereg;} 最佳答案 SaveKey是对RegS

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

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

c - 如何从注册表中获取每个键和子键?

我正在尝试编写一个应用程序,我可以在其中提供一个注册表路径,例如HKLM\hardware\description\system并且我的应用程序应该在系统下读取每个键名,如果有子键它们的名字,如果还有更多的子项然后他们的名字等等...我的应用程序正在运行(或多或少),但我的问题是如何计算子键?比如system下有2个key,a和b,a下多了3个key,b下多了5个,那我应该怎么算自己在哪个sublevel呢?这很重要,因为我必须知道如何连接注册表路径?到目前为止,这是我的代码(大部分来自msdn,但我找不到类似的示例):#include#include#include#include#