2009-04-23 4 views

Répondre

0

Malheureusement il n'y a pas moyen de contourner cela. UAC est en fait destiné spécifiquement à empêcher ce genre de choses où les programmes installent des logiciels ou apportent des modifications à la machine sans que l'utilisateur ne s'en aperçoive.

+0

Cela a du sens. C'est vrai ... Je me demandais juste si. Le script que j'ai fait était supposé contourner les invites UAC. En tant qu'utilisateur, il l'a fait, mais en tant qu'administrateur, il ne l'a pas fait. – Owen

+0

Ouais, c'est le comportement prévu de UAC dans Vista ... et dans Windows 7. Traiter avec UAC est difficile mais la meilleure solution est vraiment d'être franc avec l'utilisateur au sujet des changements - alors l'invite est vide de sens. –

0

Il s'agit effectivement d'un effet secondaire des autorisations UAC et utilisateur. Du point de vue de la sécurité, cela a du sens.

Si cela est quelque chose que vous devez faire, vous devriez chercher à mettre en place un système qui est conçu pour fonctionner rapiéçage et les déploiements avec des autorisations élevées. Systems Management Server de Microsoft ferait l'affaire, mais est évidemment une solution à grande échelle!

Vous pouvez lire à ce sujet here.

+0

Oui, j'ai ajouté des élévations vista dans le script qui a fait fonctionner le programme d'installation silencieux, mais seulement en tant qu'utilisateur. En tant qu'administrateur, il donne une invite UAC puis installe silencieusement. J'ai vérifié le lien que vous m'avez donné, peut-être la dernière option ... Je pense ... Merci ... – Owen

0

pour les installations non contrôle de compte-MSI est un peu une zone grise, avec des packages MSI signés les choses deviennent beaucoup plus facile et moins déroutant pour l'utilisateur.

Vous pouvez jeter un oeil à Clickonce Deployment qui peut résoudre certains de vos problèmes.

0

En fait, il est possible, dans des circonstances très préconçues. Plus précisément, "service" peut lancer un programme d'installation, dans une session utilisateur, avec tous les privilèges et contourner l'invite UAC (l'a déjà).

Bien sûr, cela exige que votre utilisateur d'avoir déjà installé votre service, qui ne nécessite approbation de l'administrateur.

3

Je sais que cet article est vieux ... 4 mois pour être exact. Mais en fait, oui c'est TRÈS TRÈS possible. Je souhaite corriger les personnes ci-dessus. Ajoutez simplement cette ligne à votre script NSIS.

utilisateur RequestExecutionLevel

Cette ligne indique à Windows Vista et Windows 7 que ce programme ne nécessite pas d'accès administratif, qui Vista/7 pense.

+0

Cela a pour effet secondaire d'empêcher l'accès aux zones "système" du système d'exploitation. Le jeu d'installation NSIS ne pourra pas écrire dans HKLM ou dans l'un des dossiers protégés du système d'exploitation. Selon votre version de NSIS, cela entraînera des erreurs, Windows exécutera le programme en mode de compatibilité ou échouera silencieusement tout en signalant un succès. – jveazey