Comment installer / déployer / créer mon application Visual C # afin qu'elle soit disponible pour tous les utilisateurs?

StackOverflow https://stackoverflow.com/questions/425207

Question

J'ai écrit une application dans Microsoft Visual C # 2008 Express Edition.

L'ordinateur Windows XP sur lequel je souhaite l'installer possède deux comptes d'utilisateur. L’un est le compte administrateur, l’autre est le compte utilisateur principal et n’a pas de privilèges administrateur.

J'ai essayé d'installer l'application en tant qu'utilisateur principal et j'ai reçu une erreur disant que je ne pouvais pas, car je ne suis pas administrateur. Bien. J'ai essayé d'installer l'application en tant que compte d'administrateur. Il s'installe correctement et fonctionne correctement sous le compte administrateur, mais ne semble pas être disponible dans mon compte d'utilisateur principal. À partir du compte d'utilisateur principal, j'ai navigué à l'aide de l'explorateur Windows jusqu'à où je lance l'application en tant qu'administrateur et le même fichier "ne peut pas installer". erreur.

Que dois-je faire pour que cela soit disponible sur mon compte d'utilisateur principal?

Merci!

-Adeena

Mise à jour: quelqu'un a demandé ces détails: J'utilise le " ClickOnce " schéma de publication (je pense que c'est la seule chose disponible dans Express. J'utilise l'assistant et je le publie dans un dossier local de ma machine, puis je dis "l'installation sera effectuée à partir d'un CD-ROM" (par opposition à un site Web ou un partage de fichiers), puis sélectionnez "L'application ne recherchera pas les mises à jour"

.

update2: Lorsque j'essaie d'installer sous le compte d'utilisateur principal, une boîte de dialogue indiquant: "L'application ne peut pas être démarrée. contactez le fournisseur de l'application. " Il existe ensuite un bouton pour "Détails ...". Je clique dessus pour obtenir le résumé d'erreur suivant: RÉSUMÉ DES ERREURS     Vous trouverez ci-dessous un récapitulatif des erreurs. Les détails de ces erreurs sont répertoriés plus loin dans le journal.     * L'activation de C: \ ADIA \ ADIA.application a entraîné une exception. Les messages d'échec suivants ont été détectés:         + L'accès est refusé. (Exception de HRESULT: 0x80070005 (E_ACCESSDENIED))

Une autre note ... C'est une application très simple. Si je copie l'exécutable créé lorsque je travaille dans MS Visual Express sur une autre machine et que je l'exécute simplement en tant qu'utilisateur principal, tout se passe bien.

Était-ce utile?

La solution

Vous ne pouvez pas modifier un projet d’installation ClickOnce pour installer Tous les utilisateurs. Ils sont conçus pour être installés par des utilisateurs individuels uniquement. Vous devez créer un programme d'installation MSI. Ajoutez un nouveau projet à votre solution, allez à Autres types de projets | Configuration et déploiement | Assistant de configuration. Cela devrait vous mettre sur le chemin, puis voir mon autre réponse.

Vous n'êtes pas sûr que cela fonctionne dans Express. Si ce n'est pas le cas, vous devrez peut-être utiliser un programme d'installation tiers tel que Wix ou le Programme d'installation Nullsoft .

Autres conseils

Ouvrez votre projet d'installation dans Visual Studio. Cliquez sur votre projet de déploiement, puis sur F4 pour afficher les propriétés. Dans les propriétés, définissez InstallAllUsers sur true et reconstruisez votre projet. Cela devrait fonctionner comme prévu maintenant.

L’installation est-elle un MSI? Si tel est le cas, essayez MSIEXEC.EXE / I yourpackage.msi ALLUSERS = 1

Si votre application est un fichier .exe unique, pourquoi ne pas avoir la peine d'installer? J'aime les applications que je peux simplement copier sur ma machine et exécuter sans avoir à passer par l'installation ou la désinstallation.

Si vous voulez vraiment avoir du style, zippez votre fichier .exe avec un fichier .cmd qui copie le fichier .exe dans "Program Files" et crée un raccourci dans le menu Démarrer.

La plus grande force de ClickOnce réside dans les applications qui changent fréquemment. Il permet au client de se mettre à jour de manière transparente à partir de la version mise à jour du serveur. Si vous ne le faites pas, le principal avantage de l'utilisation de ClickOnce est parti.

A article de blog sur les blogs MDSN explique que l'utilisateur non-administrateur a besoin d'une autorisation pour accéder à un répertoire et à une clé de registre et propose une solution de contournement effrayante.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top