gpt4 book ai didi

file-io - 如何使用 InstallShield 添加 Windows 文件类型关联?

转载 作者:行者123 更新时间:2023-12-02 21:25:55 30 4
gpt4 key购买 nike

我编写了一个应用程序来接受文件路径(具有自定义扩展名的文件)作为参数,然后对其进行一些处理。

我的想法是,我可以将自定义文件与我安装的可执行应用程序(通过安装屏蔽安装程序)关联(使用 Windows 功能)。

我希望能够双击带有自定义扩展名的文件,并将其传递给我的可执行文件进行处理。

但是,我得到的行为是这样的:

  • 如果我双击我的文件(带有自定义扩展名),它不会执行任何操作。
  • 如果我将文件拖放到我的可执行程序上,它就会按预期工作。

那么是否可以通过简单地双击我的自定义文件来使其工作?

我猜 Windows 正在尝试使用可执行文件打开自定义文件,这可能与将其作为参数传递进来不同?!

感谢任何帮助。

谢谢,KS

最佳答案

使用InstallShield 2013:

对于自定义文件类型

  1. 切换到“安装设计器”选项卡。
  2. 在左侧框架中,展开“组织”并选择“组件”。
  3. 从组件列表中,展开主 exe 的选项,然后展开“高级设置”并选择“文件类型”。
  4. 右键单击“扩展”并选择“新建扩展”。输入不带前导句点的扩展名。
  5. 您的扩展程序在创建时应该自动添加“动词”“打开”。选择那个。输入“显示名称”,例如“使用 MyApp 打开(&O)”。输入“参数”,例如“%1”(将文件名传递给用引号引起来的 exe,以处理长文件名/空格。)
  6. 从列表中选择您的新扩展程序,然后为其输入“ProgID”。例如,“MyApp.Document”。

定义与类型关联的特定图标(而不是隐式 exe 图标):

  • 点击您添加的“ProgID”(“MyApp.Document”或其他)。单击“图标”字段,然后单击出现的“...”按钮。这将允许您浏览到图标文件。
  • 对于“常见”文件类型

    如果某个文件类型不“属于”您的应用程序,您可能需要将您的应用程序添加到打开该类型的选项列表中,但不要将其设为默认程序,也不要更改默认图标。以下是如何实现这一目标...

    1. 切换到“安装设计器”选项卡并按照自定义文件类型的说明进行操作
    2. 在左侧框架中,展开“组织”并选择“组件”。
    3. 从组件列表中,展开主 exe 的选项,然后选择“注册表数据”。
    4. 在“目标计算机框架”中,右键单击“HKEY_CLASSES_ROOT”并选择“新建”...“ key ”。将键命名为您要为其定义关联的文件扩展名(包括前导句点)。
    5. 右键单击该新项并选择“新建”...“默认值”。然后,右键单击该默认值,选择“修改”。输入打开此类型的默认应用程序的 ProgID 并指定图标。您可能需要检查注册表以确定该值。例如,zip 文件的标准默认值是“CompressedFolder”。弄清楚这一点是此过程中最棘手的部分。
    6. 右键单击该新项并再次选择“新建”...“项”以创建子项。将子项命名为“OpenWithProgids”。
    7. 右键单击“OpenWithProgids”键并选择“新建”...“字符串值”。将该值命名为您定义为默认值的 ProgId。将此值保留为“空”(“名称”就是“值”)。
    8. 右键单击“OpenWithProgids”键并再次选择“新建”...“字符串值”。这次,将值命名为您在按照自定义文件类型的说明进行操作时为应用程序定义的 ProgId。

    关于file-io - 如何使用 InstallShield 添加 Windows 文件类型关联?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15883361/

    30 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com