Articles of registry

编辑Windowsregistry,从Python,在Linux下

我正在寻找一个Python API(或者我愿意绑定的C API),用于在Linux系统中将Windowsregistry从XP编辑为7。 Windows目标将是Linux下的一个装载卷。 如果不存在,我愿意编写一个库。 因此,在registry中的任何文档或内部结构也将是方便的。 任何帮助,非常appriciated。

如何让Internet Explorer正确处理自定义协议处理程序?

我想要一个我正在开发的网站,在ssh://0.0.0.0types的URL上打开PuTTY 。 我在Chrome和Firefox中使用了此function,但在Internet Explorer中出现以下错误: Windows cannot access the specified device, path, or file. You may not have the appropriate permissions to access this item. 其次是: Unable to open this helper application for ssh://0.0.0.0/. The protocol specified in this address is not valid. Make sure the address is correct, and try again. 这里是我的registry项: Windows Registry Editor […]

如何判断哪个值触发了RegNotifyChangeKeyValue?

我正在使用RegNotifyChangeKeyValue API来跟踪对我的registry项和C ++示例的更改,类似于该MSDN页面底部给出的示例。 我设置这个API: RegOpenKeyEx(HKEY_LOCAL_MACHINE, L"Software\\Company\\Product", 0, KEY_NOTIFY, &hKey); RegNotifyChangeKeyValue(hKey, FALSE, REG_NOTIFY_CHANGE_LAST_SET, hEvent, TRUE); 所以说,当这个API作为参数发生的事件被发信号(这意味着对Software\Company\Product键的改变)有没有办法找出哪个值实际触发了它?

如何从32位进程读取64位registry项?

我一直使用来自HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography的关键MachineGuid的值来唯一标识主机,但是在64位计算机上运行的32位进程中,该值似乎丢失。 我想这是在Wow6432Node,它确实缺less的地方search。 根据这个,你应该能够通过添加一个标志来正确的键,但是下面的代码仍然不能完成这项工作。 我错过了什么? const KEY_WOW64_64KEY=$0100; var r:HKEY; s:string; i,l:integer; begin //use cryptography machineguid, keep a local copy of this in initialization? l:=40; if RegOpenKeyEx(HKEY_LOCAL_MACHINE,PChar('Software\Microsoft\Cryptography'), 0,KEY_QUERY_VALUE,r)=ERROR_SUCCESS then begin SetLength(s,l); if RegQueryValue(r,'MachineGuid',PChar(s),l)=ERROR_SUCCESS then begin SetLength(s,l); RegCloseKey(r); end else begin //try from-32-to-64 RegCloseKey(r); if RegOpenKeyEx(HKEY_LOCAL_MACHINE,PChar('Software\Microsoft\Cryptography'), 0,KEY_QUERY_VALUE or KEY_WOW64_64KEY,r)=ERROR_SUCCESS then begin l:=40; if RegQueryValue(r,'MachineGuid',PChar(s),l)=ERROR_SUCCESS then SetLength(s,l) else l:=0; […]

通过值或registry键循环.. _winreg Python

我将如何使用Python模块_winreg循环访问Windowsregistry项的所有 值 。 我有代码,将做我想要的,但它是指定的registry项的子项。 这是代码: from _winreg import * t = OpenKey(HKEY_CURRENT_USER, r"PATH TO KEY", 0, KEY_ALL_ACCESS) try: i = 0 while True: subkey = EnumValue(t, i) print subkey i += 1 except WindowsError: # WindowsError: [Errno 259] No more data is available pass 哦,算出来。 但是,如果有人知道另一种做法,我仍然会接受这个答案!

每个Windows操作系统的registry中的CurrentVersion值

我正在使用nsis安装程序。 为此,我想知道每个操作系统的CurrentVersion值 HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion" 例如:我的电脑上安装了windows 7专业版, CurrentVersion值为6.1 。 从Windows 98开始,任何一个Windows操作系统都能列出它吗?

如何检查系统上是否安装了特定的Web浏览器?

如何检查系统上是否安装了特定的网页浏览器(chrome,firefox,opera)? (C ++ / Windows平台)。 也许这可以检查registry中的某个地方?

是否有一个Windowsregistry项的原始背景位置?

是否有一个Windowsregistry项的原始背景位置? 在“HKEY_CURRENT_USER \ Control Panel \ Desktop”中,值“Wallpaper”为“C:\ Users \ CURRENTUSER \ AppData \ Roaming \ Microsoft \ Windows \ Themes \ TranscodedWallpaper.jpg”。

Windows:列出并启动与扩展名关联的应用程序

如何确定与特定扩展相关联的应用程序(例如.JPG),然后确定该应用程序的可执行文件位于何处,以便可以通过调用System.Diagnostics.Process.Start(…)来启动该应用程序。 我已经知道如何读写registry。 这是registry的布局,使得以标准方式难以确定哪些应用程序与扩展相关联,有什么显示名称以及可执行文件的位置。

获取Windows序列号(是:从registry中获取MachineGuid)

我试图从registry中获取MachineGuid ,为我的许可证系统创build一些与操作系统绑定的级别。 从我可以使用的文档 string key = "HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography"; string r = (string)Registry.GetValue(key, "MachineGuid", (object)"default"); 为拿到它,为实现它。 此外,文档告诉我,当名称没有find时,我得到"default" ,或者如果密钥不存在,则为null 。 如果我没有访问权限,我应该得到一个安全exception。 上面的代码给了我"default" ,这意味着名称没有find。 但是,如果我注册RegEditregistry,它就在那里。 如何从没有pipe理员权限的应用程序获取MachineGuid值? 更新 :使用reg.exe我没有问题得到的价值。 更新 :我更新了标题,所以寻找确定Windows安装的独特方式的人也可以在这里find。