4

これは質問ではなく、答えです。
問題の一部はここにあります:すべてのユーザーにプログラムのショートカットをインストールする方法は?
引用:
「...マシン上のすべてのユーザーがショートカットを持つように、インストーラーがすべてのユーザー プロファイルの下にショートカットを作成できるようにするにはどうすればよいですか?」
別の - ここ: Wixは、すべてのユーザー/マシンごとに宣伝されていないショートカットを作成し ます。 ."

アンインストール ショートカットを作成する際の主な問題。

このソリューションは、Rob Menching のブログ投稿How to create a uninstall Shortcut (and pass the all ICE validation) に基づいています。

<!-- Script from Rob Menching's blog post -->
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Product Id="PUT-GUID-HERE"
         UpgradeCode="PUT-GUID-HERE"
         Name="TestUinstallShortcut"
         Language="1033"
         Version="1.0.0"
         Manufacturer="Microsoft Corporation"> 

    <Package InstallerVersion="200"
            Compressed="yes"
            InstallScope="perMachine" />

    <Media Id="1" />

    <Directory Id="TARGETDIR"
               Name="SourceDir">
        <Directory Id="ProgramMenuFolder">
            <Directory Id="ShortcutFolder"
                       Name="My Application">
                <Component Id="UninstallShortcutComponent"
                           Guid="PUT-GUID-HERE">
                    <RegistryKey Root="HKCU"
                                 Key="Software\[UpgradeCode]">
                        <RegistryValue Value="RobMen Was Here."
                                       Type="string"
                                       KeyPath="yes" />
                    </RegistryKey>

                    <Shortcut Id="UninstallProduct"
                              Name="Uninstall My Application"
                              Target="[System64Folder]msiexec.exe"
                              Arguments="/x [ProductCode]"
                              Directory="ShortcutFolder"
                              Description="Uninstalls My Application" />

                    <RemoveFolder Id="RemoveShorcutFolder"
                                  On="uninstall" />
                </Component>
            </Directory>
        </Directory>
    </Directory>

    <Feature Id="TestUninstallShortcut"
             Title="Test Uninstall Shortcut Feature"
             Level="1">
        <ComponentRef Id="UninstallShortcutComponent" />
    </Feature>
    <CustomAction Id="LaunchApp" 
                  Directory="TARGETDIR" 
                  ExeCommand="[System64Folder]reg.exe Delete HKCU\Software\[UpgradeCode] /f" />
    <InstallExecuteSequence>
        <Custom Action="LaunchApp" 
                After="InstallFinalize">(NOT Installed) OR UPGRADINGPRODUCTCODE</Custom>
    </InstallExecuteSequence>
</Product>
</Wix>  

この例では:
"Package" の項目に追加されInstallScope ="perMachine"
たレジストリ キーを [ "Software\[UpgradeCode]"
Added CustomAction ] に変更LaunchAppして、不要なレジストリ キーを削除します。

WinXP 32bit および Win7 64bit でテスト済み。

4

0 に答える 0