2010-03-25 6 views
4

Nous utilisons InstallAnywhere pour installer notre produit. L'un des composants qu'il doit installer est mongrel. IA appelle la ligne de commande suivante lors de l'installation:Installation du service mongrel sous Windows 2008

mongrel_rails service::install -N service-1 -D "Service 1" -c "C:\app_dir\\rails\rails_apps\service-1" -p 19000 -e production 

Apprentissage sous les capots "sc create ..." est utilisé.

L'installation fonctionne très bien sous Windows 2003. Sous Windows 2008, cette opération nécessite cependant des privilèges élevés.

Lorsque je me connecte en tant qu'administrateur local (utilisateur 'local-machine \ administrator'), l'installation fonctionne correctement. Toutefois, lorsque je me connecte en tant qu'utilisateur de domaine faisant partie d'un groupe d'administrateurs locaux, les services ne parviennent pas à s'installer avec une erreur "l'accès est refusé".

Comment puis-je permettre d'installer le produit sans avoir à me connecter en tant qu'administrateur local?

Merci!

Couple de notes que j'aimerais ajouter. Une solution que j'ai essayée est d'exécuter le programme d'installation en tant qu'administrateur. Le service est installé. Cependant, cela crée un autre problème. Un produit tiers intégré et ses fichiers sont installés avec des droits d'administrateur. Nous devons donc exécuter le programme d'installation en tant qu'utilisateur connecté.

Répondre

-1

Avez-vous essayé de réduire le paramètre UAC pour le compte utilisé? http://www.petri.co.il/disable-uac-in-windows-7.htm peut être une ressource.

+0

En règle générale, il est préférable d'interdire l'UAC pour que les utilisateurs installent/exécutent un logiciel, car la désactivation de l'UAC peut présenter un risque de sécurité. Au lieu de cela, le logiciel devrait être conçu pour pouvoir fonctionner avec le moins de privilèges. Dans certaines situations, il n'est même pas possible de désactiver le contrôle de compte d'utilisateur (par exemple, les règles de sécurité définies au niveau du domaine). –

0

Pouvez-vous modifier le manifeste du programme d'installation pour exiger des privilèges d'administrateur pour pouvoir fonctionner? Cela devrait provoquer une invite UAC pour élever les privilèges, mais il doit toujours s'exécuter en tant qu'utilisateur connecté. Il existe un paramètre dans InstallShield pour contrôler cela, mais je ne suis pas sûr de InstallAnywhere.