Articles of registry

编辑Windowsregistry,从Python,在Linux下

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

如何确定Windows Java安装位置

我试图从一个C#程序集(使用Process.Start(info) )dynamic运行.jar。 现在,从一个控制台应用程序,我可以运行: ProcessStartInfo info = new ProcessStartInfo("java", "-jar somerandom.jar"); 然而,在一个程序Win32Exception ,我总是得到一个“系统找不到指定的文件”的Win32Exception ,并且必须将行更改为Java的完整path,如下所示: ProcessStartInfo info = new ProcessStartInfo("C:\\Program Files\\Java\\jre6\\bin\\java.exe", "-jar somerandom.jar"); 这显然不会。 我需要一种dynamic(但是声明式)确定Java安装位置的方法。 我开始考虑到registry,但是当我到达那里时,我注意到有版本的特定键,他们甚至不能保证是数字(例如“HKEY_LOCAL_MACHINE \ SOFTWARE \ JavaSoft \ Java运行时环境\ 1.6”和“HKEY_LOCAL_MACHINE \ SOFTWARE \ JavaSoft \ Java Runtime Environment \ 1.6.0_20”)。 从C#应用程序中查找最新的java.exepath,最可靠的“远程”解决scheme是什么? 非常感谢。 – 编辑 – 感谢GenericTypeTea和Stephen Cleary的答案,我已经解决了以下问题: private String GetJavaInstallationPath() { String javaKey = […]

从32位应用程序访问64位registry

我需要在c ++中打开一个registry项"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\{26A24AE4-039D-4CA4-87B4-2F86416024FF}" 。 它包含Java 64位应用程序。 该registry项的完整path是"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F86416024FF}" 。 我们可以通过registry来查看这个path。 我用 returnStatus = RegOpenKeyEx(HKEY_LOCAL_MACHINE, TEXT("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\{26A24AE4-039D-4CA4-87B4-2F86416024FF}"), 0, KEY_ALL_ACCESS, &hKey) 用于打开registry; 但它返回错误值(2)。 returnStatus = RegOpenKeyEx(HKEY_LOCAL_MACHINE, TEXT("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall")… 返回成功结果。 我能做什么?

如何添加和删除系统的环境variables“path”?

我如何永久地添加系统环境variables“path”的path? 我只想添加path,如果它不存在。 另外,我想删除所有包含文件夹名称的path,例如\myprogram是否为: C:\path\to\myprogram\dist; 或者D:\another\path\to\myprogram\dist;

从Pythonregistry中读取HKEY CURRENT USER,指定用户

在我的应用程序中,我运行几个不同的用户帐户下的subprocess。 我需要能够读取这些subprocess写入registry的一些信息。 每个人都写入HKEY_CURRENT_USER,我知道他们正在运行的用户帐户名称。 在Python中,如何从特定用户的HKEY_CURRENT_USER读取值? 我假设我需要以某种方式加载用户名下的registry值,然后从那里读取它们,但是如何? 编辑:只是为了确保清楚,我的Python程序是以pipe理员身份运行的,而且我拥有帐户“user1”,“user2”和“user3”,每个帐户都有自己的HKEY_CURRENT_USER中的信息。 作为pipe理员,我如何读取user1的HKEY_CURRENT_USER数据?

我可以编辑文本字段(不是资源pipe理器上下文菜单)的上下文菜单吗?

我想添加一个条目到文本字段的上下文菜单中,例如: 我有一个AutoHotkey可执行文件,将突出显示的文本放入剪贴板,然后用剪贴板在Chrome中执行Googlesearch。 我想要一个registry添加,让我在菜单中单击,运行该可执行文件。 我已经在资源pipe理器的上下文菜单中实现了这一点(用于处理第三方应用程序的文件等),但是我没有发现能够改变这个特定菜单的任何地方。

在cmd(bat文件)中运行reg命令?

我试图在cmd(bat文件)中运行这个注册码,但是我无法使其工作。 我在哪里做错了? [HKEY_CURRENT_USER\Software\Policies\Microsoft\Internet Explorer\Control Panel] "HomePage"=dword:00000001 它可以工作,如果我把它作为一个reg文件,双击。 蝙蝠文件代码(这不工作,没有错误): @echo off reg add "HKCU\Software\Policies\Microsoft\Internet Explorer\Control Panel" /V HomePage /T REG_DWORD /F /D 1

在Windows中重写registry文件

我一直在试图find一种方法来“碎片整理”我的Windows机器上的registry 。 首先,这是否有意义? 这样做有什么好处? (在superuser.com没有太多的爱)其次,我正在寻找一种方法来重写与Windows API的C / C + +的registry。 有没有一种方法来读取registry,并将其写入到一个新的文件中去除未使用的字节? (我可能必须写入新的文件,然后启动到另一个操作系统/磁盘,才能覆盖原来的…但我愿意冒这个险。)

在Windows启动时使用参数启动应用程序

我试图让我的应用程序在Windows启动时自动启动并运行login逻辑。 我有它的启动文件夹中的快捷方式与参数,但我想知道是否有一些方法来设置一个registry项,可以启动我的程序,并传递参数像一个快捷方式将? 我正在使用Inno安装程序安装程序,我正在使用这一行: Name: "{commonstartup}\AppNameHere"; Filename: "{app}\AppNameHere.exe"; \ Parameters: "/login"` 但我希望能够使用像这样的registry项: Root: HKLM; Subkey: "SOFTWARE\Microsoft\Windows\CurrentVersion\Run"; \ ValueType: string; ValueName: "AppNameHere"; ValueData: """{app}\AppNameHere.exe"""; \ Flags: uninsdeletevalue` 我以为会有一些方法来指定参数的启动,但我找不到什么在Inno安装网站上,除了我已经发现有关从http://www.jrsoftware.org/iskb.php添加registry项本身?startwithwindows 有没有人有添加registry项和Windows启动时使用参数启动应用程序的经验?

如何创build行为如.cmd / .bat的文件扩展名?

我想这是一个奇怪的问题。 但我很好奇。这是我迄今为止所尝试的:我导出并比较[HKEY_CLASSES_ROOT\batfile] , [HKEY_CLASSES_ROOT\cmdfile] , [HKEY_CLASSES_ROOT\.bat] , [HKEY_CLASSES_ROOT\.cmd] 。 我注意到唯一的区别是在HKEY_CLASSES_ROOT\*\FrienflyTypeName这假设不是至关重要的执行。所以我创build了一个与所需的扩展名(我试图创build.scjs文件扩展名)相同的数据registry值: Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\.scjs] @="scjsfile" #this says that the file will contains text [HKEY_CLASSES_ROOT\.scjs\PersistentHandler] @="{5e941d80-bf96-11cd-b579-08002b30bfeb}" [HKEY_CLASSES_ROOT\scjsfile] @="Windows Batch File" "EditFlags"=hex:30,04,00,00 "FriendlyTypeName"=hex(2):40,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,\ 00,6f,00,6f,00,74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,\ 32,00,5c,00,61,00,63,00,70,00,70,00,61,00,67,00,65,00,2e,00,64,00,6c,00,6c,\ 00,2c,00,2d,00,36,00,30,00,30,00,32,00,00,00 [HKEY_CLASSES_ROOT\scjsfile\DefaultIcon] @=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\ 00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,69,00,6d,00,\ 61,00,67,00,65,00,72,00,65,00,73,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,36,\ 00,38,00,00,00 [HKEY_CLASSES_ROOT\scjsfile\shell] [HKEY_CLASSES_ROOT\scjsfile\shell\edit] [HKEY_CLASSES_ROOT\scjsfile\shell\edit\command] @=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\ 00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,4e,00,4f,00,\ 54,00,45,00,50,00,41,00,44,00,2e,00,45,00,58,00,45,00,20,00,25,00,31,00,00,\ 00 #copied from batfile from HKEY_CLASSES_ROOT .Same as […]