WiX 3와 함께 설치되는 앱이 있습니다. 대부분 설치가 정상적으로 작동하지만 바탕 화면 바로 가기를 사용하려고하면 내 마음이들 것 같습니다. ...WiX 3가 나를 미치게 만들었습니다. 바탕 화면 바로 가기를 만들려고합니다.
내 앱이 설치되어 있고 이미 시작 메뉴 폴더에 바로 가기가 있습니다. 제대로 작동합니다. 하지만 바탕 화면 바로 가기를 실행하고 실행하려면 어떻게해야합니까? 나는 점점 계속
<Product Id="*" Name="....." UpgradeCode="MY-GUID">
<Package Id="*" InstallerVersion="200" Compressed="yes" />
<Media Id="1" Cabinet="foobar.cab" EmbedCab="yes" />
<Property Id="ALLUSERS">1</Property>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramMenuFolder">
<Directory Id="ApplicationProgramsFolder" Name="FooBar"/>
</Directory>
<Directory Id="DesktopFolder" SourceName="Desktop"/>
<Directory Id="ProgramFilesFolder">
<Directory Id="FoobarDir" Name="FOOBAR">
<Directory Id="INSTALLLOCATION" Name="FooApp">
<Component Id="MainFiles" Guid=".....">
<File Id="FooMainApp" Source="FooMainApp.exe" />
</Component>
</Directory>
</Directory>
</Directory>
</Directory>
....
<!-- this shortcut here works just fine ... -->
<DirectoryRef Id="ApplicationProgramsFolder">
<Component Id="AppShortcut" Guid="...">
<Shortcut Id="ApplicationStartMenuShortcut"
Name="FooBarApp" Description="..."
Target="[INSTALLLOCATION]FooMainApp.exe"
WorkingDirectory="INSTALLLOCATION"/>
</Component>
</DirectoryRef>
<!-- but this shortcut here never seems to work .. ... -->
<DirectoryRef Id="DesktopFolder">
<Component Id="DesktopShortcut" Guid="....." >
<Shortcut Id="DesktopAppShortcut"
Advertise="no"
Name="FooBarApp" Description="...."
Target="[INSTALLLOCATION]FooMainApp.exe"
WorkingDirectory="INSTALLLOCATION"/>
</Component>
</DirectoryRef>
오류는 다음과 같습니다
ICE18 : 구성 요소에 대한 키 패스는 : 'DesktopFolder' 'DesktopShortcut'디렉토리입니다. 디렉토리/구성 요소 쌍은 CreateFolders 테이블에 이어야합니다.
ICE38 : 구성 요소 DesktopShortcut 은 사용자 프로필에 설치됩니다. 파일이 아닌 KeyPath로 HKCU에서 레지스트리 키를 사용해야합니다.
ICE43 : 구성 요소 DesktopShortcut에는 비공개 바로 가기가 있습니다. 파일이 아니라 KeyPath로 HKCU에서 레지스트리 키를 사용해야합니다.
지구상에 WiX 3/Windows Installer가 무엇을 말하려고하는지 이해하지 못합니다 .... 누구?
두 구성 요소, AppShortcut
및 DesktopShortcut
은 사실 "주요"기능의 일부입니다. 문제는 없습니다.이 좋아, 그래서 내 바탕 화면 바로 가기에 일부 레지스트리 키 물건을 추가 해주기
<Component Id="DesktopShortcut" Guid="BF3587B4-F52E-411E-8814-CFCBF8201C0D">
<RegistryKey Root="HKCU" Key="Software\Foo Inc\FooBarApp\Installed"
Action="createAndRemoveOnUninstall">
<RegistryValue Name="DTSC" Value="1" Type="integer" KeyPath="yes"/>
</RegistryKey>
<Shortcut Id="DesktopShortcut" Directory="DesktopFolder"
Name="FooBar" WorkingDirectory="INSTALLLOCATION"
Icon="foobar.ico"
Target="[INSTALLOCATION]FooMainApp.exe"/>
</Component>
얼음 메시지는 다음과 같습니다 : 나는
이업데이트 .... 여기에서 잘못 될 수 지구상에서 무엇을 알아낼 수 없습니다 사라졌지만 앱을 설치하려고 할 때 오류 1909가 발생합니다. 대상 폴더가 없거나 쓰기 권한이 없습니다.
업데이트 2 : 위의 예제 코드는 Win XP에서 작동하지만 Windows Server 2003에서는 계속 실패합니다. - (더 이상의 아이디어?
이 문제는 나를 미치게 만들었다! 그리고 여전히 정신 나간 ... Windows 7에서 작동하도록해야하기 때문에 –