0

スタートメニューのショートカットを作成しようとしています。これは私が使用しているコードです:

<Fragment>
    <SetProperty Id="MIFOLDER" Value="[INSTALLFOLDER]\MI" Before="CostFinalize"></SetProperty>
    <!-- Start menu -->
    <Icon Id="iconCMD" SourceFile="$(var.SharedComponents.ProjectDir)Images\Icons\cmd.ico" />
    <DirectoryRef Id="STARTMENUFOLDER">
      <Component Id="cmp211060161C737F50377C120FF39D7623" Guid="{E7B9FB15-4A1D-4E3E-BCDE-EB2E5638C452}" Win64="yes">
        <Shortcut Id="shrtct211060161C737F50377C120FF39D7623" Name="Management Interface (MI)"
          Target="[System64Folder]\cmd.exe" Icon="iconCMD" Arguments='/k "title Managment Command Line Interface (MI)"' WorkingDirectory="MIFOLDER" />
        <RegistryValue Root="HKCU" Key="Software\$(var.Manufacturer)\VB\Installer\$(var.ProductName)\MI"
          Name="MI" Type="string" Value="$(var.VersionNumber)" KeyPath="yes" />
        <RemoveFolder Id="rem211060161C737F50377C120FF39D7623" On="uninstall"/>
      </Component>
    </DirectoryRef>
  </Fragment>

このショートカットでコマンド ライン インターフェイスを実行し、インストール フォルダーで起動します。

セットアップを正常に実行すると、実際に正常に動作し、すべて正常に動作します。

/q (無人) を使用してインストールし、インストール後にショートカットをクリックすると、作業ディレクトリではなく Windows\system32 ディレクトリに移動します。ショートカット プロパティを見ると、SetProperty アクションが実行されないため、\MI から開始するように設定されていることがわかります。

ヘルプやアイデアはありますか?

4

1 に答える 1

1

サイレント インストールでは、InstallUISequenceはスキップされます。属性を使用Sequenceして、必要に応じて SetProperty アクションを実行します (両方または最初に)。

于 2013-05-27T06:53:38.100 に答える