2017-02-28 2 views
0

J'essaye d'enregistrer le port en utilisant l'action personnalisée d'installation de WIX. Vérifiez le code ci-dessous,L'événement personnalisé de configuration de Wix ne demande pas les droits d'administrateur

<CustomAction Id="addPort" Directory="INSTALLFOLDER" Execute="commit" Impersonate="no" ExeCommand="[SystemFolder]netsh.exe http add urlacl http://*:1919/ user=Everyone" Return="check"> 
</CustomAction> 
<InstallExecuteSequence> 
    <Custom Action="addPort" Before="InstallFinalize">NOT Installed</Custom> 
</InstallExecuteSequence> 

Maintenant la question est, alors que je commence à exécuter le fichier .msi, il me demande d'entrer les informations d'identification administrateur pour lancer l'installation, mais quand il vient d'enregistrer le port en utilisant l'action personnalisée, commande La fenêtre s'ouvre mais le port ne s'annonce pas et il y a une erreur concernant l'accès restreint.

+0

Lorsque vous exécutez la commande à partir d'une invite de commande régulière (sur la machine avec le message d'accès restreint), il enregistre le port? peut-être que les informations d'identification de l'administrateur sur cette machine ne suffisent pas et qu'il y a une politique de groupe qui empêche l'enregistrement ... – TeaHoney

Répondre

0

D'abord je mentionnerais que la phase de validation ne se déclenchera pas si l'annulation est désactivée. Deuxièmement, j'utiliserais les actions personnalisées de WiX Quiet Execute pour que vous puissiez enregistrer la sortie et un certain nombre d'autres raisons. Vous voulez utiliser l'exemple "exécution différée" ci-dessous.

http://wixtoolset.org/documentation/manual/v3/customactions/qtexec.html