将扩展关联到程序的脚本

2023-11-22

我的客户正在将某些工作站中的 MS Office 替换为 OpenOffice。我的程序使用 .xml 扩展名(使用开放格式)将文件导出到 Excel,并使用当前关联的程序(使用 ShellExecute)打开它

问题是 OpenOffice 没有注册与其关联的 .xml 扩展名。

手动关联工作正常,但我想制作一个 .reg 或其他东西来轻松更改设置。

我正在查看已进行更改的 PC 的注册表,但是

"HKEY_CLASSES_ROOT\.xml" 

key 没有任何引用 OpenOffice 的内容。

关联存储在哪里?我怎样才能制作一个脚本来完成这项工作?


真正的关联存储在密钥中"HKEY_CLASSES_ROOT\.xml"指着。

在我的机器上,该键的默认值是"xmlfile",很可能这对你来说也是一样的。

那么让我们去"HKEY_CLASSES_ROOT\xmlfile"。在那里您可以看到(并更改)将使用什么命令来启动该类型的文件:

HKEY_CLASSES_ROOT\xmlfile\shell\open\command

Windows 使用这种重定向将多个文件扩展名映射到同一文件类型,从而映射到同一应用程序。

Under "HKEY_CLASSES_ROOT\xmlfile\shell"有多个子键类似于您可以对文件执行的操作的“动词”。再次,默认值"shell"key 决定双击文件时使用哪些动词。就我而言,这是"open".

结论:

有了这些知识,使关联可编写脚本的最简单方法是使用 regedit 导出包含该更改的 .reg 文件,然后双击将其应用到目标计算机,或者:

regedit /s new_xml_association.reg

或者(如果您使用的是 XP 或更高版本并且知道自己在做什么)用以下命令覆盖当前值:

reg add "HKEY_CLASSES_ROOT\xmlfile\shell\open\command" /ve /d "path\to\program %1"

无论如何,更深入地研究reg add/?建议命令。第一种解决方案更安全。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将扩展关联到程序的脚本 的相关文章

随机推荐

  • 使用 git filter-branch 删除除文件列表之外的所有内容的历史记录

    我正在尝试在两个 git 存储库之间移动一些文件repo1 and repo2 我有一个要移动的文件的简短列表 保留历史记录 三个要移动的文件repo1 libraryname file1 libraryname file2 tests l
  • 使用JarJar重新打包工具

    我已将 Web 应用程序部署到 Google 应用程序引擎 并且我的 Web 服务使用 jersey 1 14 框架 当我尝试使用或调用 GAE 上的 Web 服务时 我收到 java lang InknownClassChangeErro
  • 如何获取 Bokeh 小部件事件和属性的列表(可用于触发 Python 回调)

    真正的 一般 问题 我是 Bokeh 新手 我正在尝试构建一个可以根据小部件提供的输入动态更新的图 然而 对于大多数小部件来说 Python 回调的使用并没有完整记录 因此我陷入了困境 我如何知道应该使用哪种小部件方法来附加我的回调 我可以
  • if 语句中的组合框为 null

    我正在尝试编写一个 if 语句 其中如果某个组合框为空 那么它会运行代码的某个部分 如果其中有数据 然后它会运行另一个组合框 我写了这个 Private Sub ProjectAddSetDateAutoBtn Click If Proje
  • 从哪里下载 Iesi.Collections?

    尝试 nHibernate 它说找不到 Iesi Collections 我可以从哪里得到这个 如果 nHibernate 如此重要 它不应该随 nHibernate 下载一起提供吗 与 NHibernate 一起提供的 Iesi Coll
  • Flutter:Android Studio 中的内联测试覆盖率

    我正在 Flutter 中使用 Android Studio 3 3 1 在 Window 和 Ubuntu 上 开发一个开源 Android 应用程序 来源可在Github 该项目有一个测试文件 可以生成覆盖率数据 可以使用诸如连体服 这
  • VBA Excel 使用表名检查特定表是否存在

    我的 Excel 工作表中有几个表格 每个都有唯一的表名称 我想知道当前工作表中是否存在名为 Table123 的表 有人可以帮我解决这个问题吗 谢谢 吉万 TableExists False On Error GoTo Skip If A
  • 让 make 在特定目录中创建目标文件

    GNU Make 3 82 gcc 4 7 2 c89 我有以下制作文件 INC PATH I home dev tools apr include apr 1 LIB PATH L home dev tools apr lib LIBS
  • PyVISA 未在 Linux 上列出 USB 仪器

    我正在尝试从 Raspberry Pi 与 LeCroy WaveRunner 640Zi 示波器进行通信 它们通过 USB 电缆连接 我已经在 Windows 下做到了这一点 但现在我无法让它在 Linux 下工作 如果我跑lsusb我看
  • 在 JavaScript 中导入、重命名和导出函数?

    使用 JavaScript 导入命名导出 重命名并再次导出的最短方法是什么 这段代码可以工作 但感觉比应有的更冗长 import mock as myFunctionMock from context myFunction export c
  • Android Studio 4.1 中的 navigation.json 是什么?

    我今天刚刚尝试了 Android Studio 4 1 我启动了 Android Studio 并创建了空活动 然后使用 Android 虚拟设备运行它 然后失败并显示此错误 FAILURE Build failed with an exc
  • “返回 false;” 是什么意思?做?

    我编写了一个网页 用户可以在其中输入存储在数据库中的日志条目 然后使用以下命令检索并打印在页面上ajax 我还是很陌生ajax想知道是否有人可以向我解释一下是什么意思return false 在我的代码末尾做什么 有必要吗 如果我把第二个a
  • WebRTC/WebSocket 屏幕录制

    在我的用例中 我想记录屏幕活动并将其发送到服务器 非实时 我为此查看了一些博客 示例演示 但我找不到任何与此相关的内容 我可以找到很多实时流媒体音频 视频 但找不到屏幕录制 我有以下与此相关的问题 对于这个用例来说 哪一个是高效的 WebR
  • Objective C - 如何创建界面?

    我需要能够创建一个像您在 C 中创建的接口一样 以强制一组类实现某些方法 这在目标c中可能吗 您可以创建一个协议 它看起来像这样 在 MyProtocol h 中 protocol MyProtocol void myMethod void
  • 无限滚动和回调

    如果这与我之前的帖子冲突 我深表歉意 但我对无限滚动的整个回调函数非常困惑 希望有人可以帮助我 我正在将 Portfolio Slideshow Pro http madebyraygun com wordpress plugins por
  • SQL中如何复制表避免游标?

    我想用 SQL 编写脚本 将这 2 个表 A B 复制到其他 2 个表 C D 其结构与 A B 相应 重要的 表C D是NOT必要的空 多个进程可以同时调用脚本 表A具有表B的外键 fk a b Table A Table B id FK
  • 使用 JavaScript / jQuery 进行简单的数字验证

    JavaScript jQuery 中有没有简单的方法来检查变量是否是数字 最好没有插件 我想提醒变量是否是数字 提前致谢 我不会推荐isNaN函数来检测数字 因为 Javascript 类型强制 Ex isNaN returns fals
  • 如何将 Maven 清单添加到指定依赖项的 AAR

    我 终于 能够使用以下命令将我的 Android 库发布到 AWS S3 maven 存储库this指导 它以 AAR 而不是 JAR 文件的形式发布 这意味着即使生成的 POM 文件列出了其所有内部依赖项 但在将库添加到另一个项目时它们也
  • 如何在 Visual Studio 2008 Express 中禁用异常助手和未处理的异常弹出窗口

    我正在使用 Visual Studio 2008 Express 并正在编写单元测试 其中存在许多预期的未处理异常 这会导致在调试器中运行这些测试时显示大量异常助手弹出窗口 我已在 VS 选项中禁用异常助手 但会弹出一个不同的未处理异常对话
  • 将扩展关联到程序的脚本

    我的客户正在将某些工作站中的 MS Office 替换为 OpenOffice 我的程序使用 xml 扩展名 使用开放格式 将文件导出到 Excel 并使用当前关联的程序 使用 ShellExecute 打开它 问题是 OpenOffice