Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [VB.NET] messaggio "avvio come amministratore"

    Salve,

    ho creato in visual 2008 un applicazione che una volta istallata e avviata durante il processo, tra le altre cose, crea una cartella e dei file .txt all'interno di essa. Al momento della creazione della cartella e dei file esce un messaggio di errore nel quale si specifica che è impossibile creare tali file.
    Se sull' exe clicco con il tasto destro e seleziono "eseguire come amministratore" il programma funziona.

    Volevo sapere se, da codice, c'era la possibilità di far uscire, nel momento in cui si clicca sull'applicazione per farla avviare, il messaggio di avviso di avvio come amministratore di windows, senza dover andare io manualmente.
    Quando si avvia l'installer della applicazione questo messaggio esce automaticamente, vorrei che uscisse anche quando avvio l'exe, a programma istallato.

    note: uso windows 7 (su xp funziona) e accedo come amministratore.

    grazie

  2. #2
    Se non erro c'è una proprietà da impostare nel manifest dell'applicazione, ma io mi chiederei piuttosto se hai davvero necessità di creare quella cartella dove la stai creando: se infatti esce quell'errore è perché la stai salvando non in una cartella scrivibile da un utente normale, ma, ad esempio, in una cartella che normalmente dovrebbe essere di sola lettura (ad esempio la cartella del tuo programma). Che genere di dati devi salvare in questa cartella?
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Originariamente inviato da MItaly
    Se non erro c'è una proprietà da impostare nel manifest dell'applicazione, ma io mi chiederei piuttosto se hai davvero necessità di creare quella cartella dove la stai creando: se infatti esce quell'errore è perché la stai salvando non in una cartella scrivibile da un utente normale, ma, ad esempio, in una cartella che normalmente dovrebbe essere di sola lettura (ad esempio la cartella del tuo programma). Che genere di dati devi salvare in questa cartella?

    I file sono di tipo .txt. Praticamente il programma in questione permette all'utilizzatore di salvare in una cartella (in C:\Programmi\mio_programma\save\) dei file txt che indicano le ultime modifiche apportate dall'utente.
    cmq ho risolto con il nodo

    codice:
    <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />

  4. #4
    Non capisco perché la gente si ostini a scrivere programmi che salvano i dati nei posti sbagliati (e a richiedere privilegi di amministratore come workaround ); le impostazioni dell'utente non vanno salvate nella cartella Programmi, ma in %appdata%.
    Nello specifico, puoi ottenere la cartella in questione tramite Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData); in essa andrai a creare una sottocartella con il nome del tuo programma in cui andrai a mettere i file in questione.
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da MItaly
    Non capisco perché la gente si ostini a scrivere programmi che salvano i dati nei posti sbagliati (e a richiedere privilegi di amministratore come workaround );

    No MP tecnici (non rispondo nemmeno!), usa il forum.

  6. #6
    Originariamente inviato da MItaly
    Non capisco perché la gente si ostini a scrivere programmi che salvano i dati nei posti sbagliati (e a richiedere privilegi di amministratore come workaround ); le impostazioni dell'utente non vanno salvate nella cartella Programmi, ma in %appdata%.
    Nello specifico, puoi ottenere la cartella in questione tramite Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData); in essa andrai a creare una sottocartella con il nome del tuo programma in cui andrai a mettere i file in questione.

    Ti ringrazio per il prezioso consiglio MItaly. E' per questo motivo che chiedo aiuto a voi esperti.. cmq all'occorrenza ho imparato ad attivare il controllo UAC.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.