从 VSIX 安装程序包运行 shell 命令或可执行文件



我正在手动处理 VSIX 扩展包的 vsixmanifest,是这样的:

<?xml version="1.0" encoding="utf-8"?>
<Vsix Version="1.0.0" xmlns="http://schemas.microsoft.com/developer/vsx-schema/2010">
  <Identifier Id="c669b00e-3746-47bd-bfe7-e6f9d64458ff">
    <Name>RapidDesign</Name>
    <Author>ZUI INFRA sp z o. o.</Author>
    <Version>2.0.1</Version>
    <Description>RapidDesign allows you to use various VisualStudio designers faster.</Description>
    <Locale>1033</Locale>
    <MoreInfoUrl>http://www.rapiddesignaddin.com</MoreInfoUrl>
    <License>EULA.txt</License>
    <Icon>Speedometer.png</Icon>
    <PreviewImage>RapidDesignPreview.png</PreviewImage>
    <InstalledByMsi>false</InstalledByMsi>
    <SupportedProducts>
      <VisualStudio Version="12.0">
        <Edition>Ultimate</Edition>
      </VisualStudio>
    </SupportedProducts>
    <SupportedFrameworkRuntimeEdition MinVersion="4.0" MaxVersion="4.0" />
  </Identifier>
  <References>
    <Reference Id="Microsoft.VisualStudio.MPF" MinVersion="10.0">
      <Name>Visual Studio MPF</Name>
    </Reference>
  </References>
  <Content>
    <VsPackage>RapidDesign.pkgdef</VsPackage>
  </Content>
</Vsix>

有一种方法可以告诉 VSIX 安装程序自动运行 CMD 命令或可执行文件,例如一种安装后步骤?

例如,我想运行/安装一个注册表脚本(.reg 文件),为我配置一些默认扩展选项,但我不知道该过程是否可以从 vsixmanifest 启动控制台命令或先前编程的 EXE 进程自动完成。

vsix 包不应依赖注册表进行设置,有一个特定的 API 来访问 Visual Studio 设置系统。部署后,普通 vsix 包无法调用或启动任何内容。您可以让包本身在首次启动时设置为默认值。

如果在设置过程中确实需要更高级的内容,可以创建.msi而不是 vsix。需要提取 vsix 并将其内容包含在 Windows 安装程序包中。或者您可以使用WixToolset创建MSI安装程序并使用<VsixInstaller>元素注册Visual Studio Package,您可以将其他逻辑放在Wix安装程序项目中。

相关内容

  • 没有找到相关文章

最新更新