registry相关内容

为什么 RegOpenKeyEx() 在 Vista 64 位上返回错误代码 2?

我拨打了以下电话: result = RegOpenKeyEx(key, s, 0, KEY_READ, &key); (C++、Visual Studio 5、Vista 64 位). 即使“regedit"显示密钥存在,它也失败并显示错误代码 2(“找不到文件").此代码始终适用于 32 位 XP.明明有文件,为什么会“找不到文件"? 解决方案 我发现我可以使用标志来解决我的 ..
发布时间:2021-12-18 08:08:04 C/C++开发

.NET 3.5 中 RegistryKey.OpenBaseKey 的替代品有哪些?

我一直在开发安装程序包并使用 RegistryKey.OpenBaseKey 与自定义操作一起使用,这些操作可以从 MSI 包的 64 位注册表或 32 位注册表中打开和添加/删除密钥,但这需要我在运行我的安装程序之前在目标机器上安装 .NET Framework 4,使用引导程序或其他东西,因为 OpenBaseKey 仅在 .NET Framework 4 中引入.理想情况下,我只想将 .NE ..
发布时间:2021-12-18 00:02:31 C#/.NET

如何读/写 Windows 7 库位置?

简介 在 Windows 7 中,您有一些特殊的文件夹,用于存放文档、图片和音乐等,称为库. 如果您不知道它们,基本上每个库文件夹都可以包含位置(路径),它们基本上是每个库的快捷方式. 一些例子: 文档(库) E:\Personal\Documents (位置) F:\Backups\Documents (位置) 音乐(图书馆) E:\Media\Mus ..
发布时间:2021-12-13 23:42:36 其他开发

在哪里存储程序设置而不是 HKEY_LOCAL_MACHINE?

我有一些当前存储在 HKEY_LOCAL_MACHINE 中的程序设置.由于 Vista 和锁定用户,一些用户没有 HKEY_LOCAL_MACHINE 的权限,并且这些值也不真正属于 HKEY_LOCAL_USER(所有用户必须相同),存储这些的最佳替代位置是什么? 大部分设置已经存储在数据库中,但在连接到数据库之前,程序需要了解一些设置.理想情况下,我会喜欢一种无需检查正在运行的操作系统 ..
发布时间:2021-12-13 23:34:52 其他开发

如何从批处理脚本中获取注册表项的值?

我需要使用一个 REG QUERY 命令来查看一个键的值,并使用这个命令将结果设置为一个变量: FOR/F "tokens=2* delims=" %%A IN ('REG QUERY "KeyName"/v ValueName') DO SET Variable=%%B 但如果密钥不存在,我会在控制台中显示错误.我需要隐藏这个错误!我尝试在命令后放置一个 2>nul 来停止 stderr,但 ..
发布时间:2021-12-13 17:35:05 其他开发

为什么其他文件夹路径也使用 SetX 添加到系统 PATH 而不仅仅是指定的文件夹路径?

我有一个批处理文件,我使用 system("name.bat") 从 C++ 调用它.在该批处理文件中,我试图读取注册表项的值.从 C++ 调用批处理文件会导致 set KEY_NAME=HKEY_LOCAL_MACHINE\stuff 失败. 但是,当我直接运行批处理文件(双击它)时,它运行良好.不知道我做错了什么. 批处理文件: set KEY_NAME=HKEY_LOCAL_M ..
发布时间:2021-12-13 17:12:28 其他开发

不允许请求的注册表访问

我正在编写一个调整实用程序,用于修改 HKEY_CLASSES_ROOT 下的一些键. 在 Windows XP 等下一切正常.但我收到错误 Requested registry access is not allowed 在 Windows 7 下.Vista 和 2008 我猜也是. 我应该如何修改我的代码以添加 UAC 支持? 解决方案 app.manifest 应该是这 ..
发布时间:2021-12-13 09:22:32 C#/.NET

将扩展关联到程序的脚本

我的客户正在某些工作站中用 OpenOffice 替换 MS Office.我的程序使用 .xml 扩展名(使用开放格式)将文件导出到 Excel 并使用当前关联的程序(使用 ShellExecute)打开它 问题在于 OpenOffice 没有注册与之关联的 .xml 扩展名. 手动关联工作正常,但我想制作一个 .reg 或其他东西来轻松更改设置. 我正在 PC 中查看已进行更 ..
发布时间:2021-12-09 20:22:51 其他开发

如何从 Windows 注册表中读取值

给定某些注册表值的键(例如 HKEY_LOCAL_MACHINE\blah\blah\blah\foo),我该如何: 安全地确定存在这样的密钥. 以编程方式(即使用代码)获取其值. 我绝对无意将任何内容写回注册表(如果可以的话,在我的职业生涯中).因此,如果我错误地写入注册表,我们可以跳过关于我体内每个分子以光速爆炸的讲座. 更喜欢 C++ 中的答案,但大多数情况下只需要知道获 ..
发布时间:2021-12-05 19:33:21 C/C++开发

Windows 没有将命令行参数传递给从 shell 执行的 Python 程序

如果我尝试从 Windows 命令外壳将命令行参数作为可执行命令直接执行,则无法获取传递给 Python 程序的命令行参数.例如,如果我有这个程序(test.py): 导入系统打印“参数:%r"% sys.argv[1:] 并执行: >test foo参数:[] 相比: >python test.py foo参数:['foo'] 我的配置有: PATH=...;C:\python25 ..

ATL COM 类注册 .rgs 文件默认值

我正在创建一个 COM 服务器可执行文件,但遇到了类注册问题.当我创建我的类对象时,自动生成的 .rgs 文件如下所示: HKCR{不删除 CLSID{ForceRemove {4C6DAD45-64B4-4C55-81C6-4CE125226421} = s '测试类'{强制移除可编程LocalServer32 = s '%MODULE%'{val ServerExecutable = s ' ..
发布时间:2021-11-30 14:12:01 C/C++开发

.RGS 文件如何工作

.rgs 文件中有一些注册表信息,我想知道 .rgs 文件中的信息是如何添加到注册表中的? 我有一个项目AAA,它将生成文件AAA.DLL,并且有一个文件xxx.rgs,其中包含注册信息,并且构建了AAA.DLL,然后将其部署到另一台机器B,所以我不知道如何在机器B上添加注册信息,我是否需要使用regsvr32命令注册AAA.dll? 解决方案 通常你的代码调用 CComModule ..
发布时间:2021-11-30 14:09:40 其他开发

如何让我的文件关联在单个程序实例中打开多个文件?

我已经在注册表中为我的程序设置了一个文件扩展名根据 Windows 的要求. 在注册表中,在 shell/open/command 下,我有: "C:\MyProgramPath\MyProgram.exe" "%1" 这对我来说很好用.当有人点击与我的应用程序关联的一个或多个文件时,我的应用程序会正确打开文件,但每个文件都在单独的程序实例中打开. 有什么办法可以做到这一点并在一个 ..
发布时间:2021-11-30 12:42:28 其他开发

如何像这个程序一样在 Windows 中覆盖最大 32x32 鼠标大小

我希望我的程序能够像附加图片中的程序一样覆盖 32x32 的最大强制鼠标尺寸,图中的光标是 72x72.这是来自 ProcMon 的捕获,显示了光标更改时发生的情况. 但是,如果我尝试自己更改游标文件的注册表值,然后使用 推送更改 SystemParametersInfo(SPI.SPI_SETCURSORS, 0, IntPtr.Zero, SPIF.SPIF_SENDCHANGE); ..
发布时间:2021-11-26 19:08:57 C#/.NET

通过注册表检测Office是32位还是64位

既然 Office 也有 64 位安装,那么您在注册表中的哪个位置查明安装的 Office 版本是 32 位还是 64 位? 解决方案 摘自 TechNet 文章 64 位版本的 Office 2010: 如果您已经安装了 Office 2010包括 Microsoft Outlook 2010,Outlook 设置了一个名为的注册表项安装它的计算机上 REG_SZ 类型的 位.这B ..
发布时间:2021-11-26 14:37:14 其他开发