Come posso installare / distribuire / creare la mia applicazione Visual C # in modo che sia disponibile per tutti gli utenti?

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

Domanda

Ho scritto un'applicazione in Microsoft Visual C # 2008 Express Edition.

Il computer Windows XP su cui voglio installarlo ha due account utente. Uno è l'account amministratore, l'altro è l'account utente principale e non ha privilegi di amministratore.

Ho provato a installare l'applicazione come utente principale e ho ricevuto un errore che diceva che non posso perché non sono amministratore. Belle. Ho provato a installare l'applicazione come account amministratore. Si installa bene e funziona bene con l'account admin, ma non sembra essere disponibile nel mio account utente principale. Dall'account utente principale, ho navigato utilizzando Windows Explorer da dove eseguo l'applicazione come amministratore e lo stesso " impossibile installare " di errore.

Cosa devo fare per renderlo disponibile al mio account utente principale?

Grazie!

-Adeena

Aggiornamento: qualcuno ha chiesto questi dettagli: Sto usando " ClickOnce " schema di pubblicazione (penso che sia l'unica cosa disponibile in Express. Uso la procedura guidata e la pubblico in una cartella locale sul mio computer, quindi dico "l'utente installerà da un CD-ROM" (al contrario di un sito Web o condivisione file) e seleziona " L'applicazione non verificherà la presenza di aggiornamenti "

Update2: quando provo a installare con l'account utente principale, viene visualizzata una finestra di dialogo che dice: " Impossibile avviare l'applicazione. contattare il fornitore dell'applicazione. " e poi c'è un pulsante per " Dettagli ... " Faccio clic su quello e ottengo il seguente riepilogo degli errori: SINTESI DELL'ERRORE     Di seguito è riportato un riepilogo degli errori, i dettagli di questi errori sono elencati più avanti nel registro.     * L'attivazione di C: \ ADIA \ ADIA.application ha comportato un'eccezione. Sono stati rilevati i seguenti messaggi di errore:         + Accesso negato. (Eccezione da HRESULT: 0x80070005 (E_ACCESSDENIED))

Un'altra nota ... È un'applicazione molto semplice. Se copio il file eseguibile che viene creato quando lavoro in MS Visual Express sull'altra macchina e lo eseguo come utente principale, funziona perfettamente.

È stato utile?

Soluzione

Non è possibile modificare un progetto di installazione ClickOnce per installare Tutti gli utenti. Sono progettati per essere installati solo per singoli utenti. Devi creare un programma di installazione MSI. Aggiungi un nuovo progetto alla tua soluzione, vai su Altri tipi di progetto | Installazione e distribuzione | Installazione guidata. Questo dovrebbe metterti sulla buona strada, quindi vedere la mia altra risposta.

Non sono sicuro che funzioni in Express però. In caso contrario, potrebbe essere necessario utilizzare un programma di installazione di terze parti come Wix o Programma di installazione Nullsoft .

Altri suggerimenti

Apri il tuo progetto di installazione in Visual Studio. Fare clic sul progetto di distribuzione, quindi premere F4 per visualizzare le proprietà. Nelle proprietà, imposta InstallAllUsers su true e ricostruisci il tuo progetto. Dovrebbe funzionare come previsto ora.

L'installazione è un MSI? In tal caso, prova MSIEXEC.EXE / I yourpackage.msi ALLUSERS = 1

Se l'applicazione è un singolo file .exe, perché preoccuparsi di avere un'installazione? Adoro le app che posso semplicemente copiare sul mio computer ed eseguire senza dover eseguire l'installazione e la disinstallazione.

Se vuoi essere davvero fantasioso, comprimi il tuo file .exe con un file .cmd che copia il file .exe in "Programmi" e crea un collegamento al menu di avvio.

Il principale punto di forza di ClickOnce è per le applicazioni che cambiano frequentemente. Consente al client di aggiornarsi senza problemi dalla versione aggiornata del server. Se non lo fai, il vantaggio principale dell'utilizzo di ClickOnce è sparito.

A post di blog sui blog di MDSN spiega che l'utente non amministratore necessita dell'autorizzazione per una directory e una chiave di registro e fornisce una soluzione spaventosa.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top