Jestem nowym instalatorem wix. Opracowałem konfigurację za pomocą instalatora wix dla mojej aplikacji i muszę wykonać akcję niestandardową, aby uruchomić polecenie w cmd.exe. W XP działa dobrze. Ale w Windows 8 & 7, polecenie cmd musi zostać uruchomione jako administrator.Uruchom ExeCommand w customAction jako tryb administratora w instalatorze Wix
Mam wyszukiwane hasło i znalazłem słowa kluczowe Podwyższone uprawnienia i podszywanie się pod numer mogą mi pomóc.
<Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" InstallPrivileges="elevated"></Package>
Jak widać powyżej, użyłem atrybut InstallScope ustawiony perMachine i użyłem personifikować = "Nie" w elemencie CustomAction:
<CustomAction Id='comReg' Directory='INSTALLLOCATION' Impersonate='no'
ExeCommand='"[NETFRAMEWORK40CLIENTINSTALLROOTDIR]regasm.exe" "[INSTALLLOCATION]myProduct.dll" /codebase' Return='check' />
Ale nie dostać nic zmiany podczas instalacji. Potrzebuję wiersza poleceń, aby otworzyć i uruchomić powyższe polecenie w trybie administratora.
A może ktoś proszę mi powiedzieć o tych słów kluczowych "podwyższonymi uprawnieniami & podszywać"
<InstallExecuteSequence>
<Custom Action='comReg' After='InstallFinalize'>NOT REMOVE</Custom>
<Custom Action='comUnreg' Before='RemoveFiles'>REMOVE</Custom>
</InstallExecuteSequence>
Jak to zrobić?
to pokazuje mi błąd jako błąd ICE77: comReg jest niestandardową akcją skryptową. Musi być zsekwencjonowany pomiędzy operacją InstallInitialize a operacją InstallFinalize w tabeli InstallExecuteSequence @tjleigh – Arshad
Gdzie zaplanowałeś niestandardowe działanie? Spójrz na swój element ''. Jak podaje błąd, musi to być między InstallInitialize i InstallFinalize. Najprawdopodobniej powiedziałbym "Before =" InstallFinalize "'. –
tjleigh
@ tjleigh: Zmieniłem moje pytanie, czy możesz mi pomóc z tego.! – Arshad