Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
Delphi - Conversione programmino per Windows 10
Forum - Delphi - Conversione programmino per Windows 10

Avatar
carmelo (Normal User)
Pro


Messaggi: 100
Iscritto: 15/06/2007

Segnala al moderatore
Postato alle 9:53
Venerdì, 09/10/2015
Buongiorno!
in questa pagina
http://www.pierotofy.it/pages/extras/forum/viewtopic.php?f ...
taaaanto tempo fa, con il vostro aiuto, feci una piccola utility che mi salvava le note scritte in un tmemo in un file testo nella directory "c:" e le richiamava ogni qual volta accendevo il pc.
Passando a windows 10, poichè di default non si hanno i permessi di scrittura in "c:", tale utility non riesce più a salvare e caricare questo file di testo proprio perchè sta in "c:".
A questo punto, affinchè sto programmino possa funzionare in windows 10, dovrei apportare una modifica inerente il salvataggio del file.
Ho pensato a due strade differenti:
1. Cambiare il percorso dove il programmino salvi il file di testo. Ma questo percorso deve essere tale da trovarlo in qualsiasi pc, e non so quale sia quindi chiedo a voi.
2. Lasciando il percorso originale, ovvero "c:", inserire un pezzo di codice che permetta al programmino automaticamente di scrivere in "c:" passando i permessi di scrittura. E anche qui non saprei come fare.

Sapreste darmi dei consigli su quale strada scegliere?? :)

Grazie mille! :k:
C


carmelo
PM Quote
Avatar
TheDarkJuster (Member)
Guru^2


Messaggi: 1459
Iscritto: 27/09/2013

Segnala al moderatore
Postato alle 10:21
Venerdì, 09/10/2015
Basta avviarlo come amministratore

PM Quote
Avatar
carmelo (Normal User)
Pro


Messaggi: 100
Iscritto: 15/06/2007

Segnala al moderatore
Postato alle 10:49
Venerdì, 09/10/2015
si grazie, in effetti cosi sapevo funzionasse ma se do il programmino ad altri utenti, non vorrei dire ogni volta di avviarlo come amministratore, ma fare in modo che lo faccia in automatico...


carmelo
PM Quote
Avatar
TheDarkJuster (Member)
Guru^2


Messaggi: 1459
Iscritto: 27/09/2013

Segnala al moderatore
Postato alle 13:44
Venerdì, 09/10/2015
Non puoi. L UAC di Windows è fatto appositamente per prevenire questo comportamento. Cosa succederebbe se i programmi malevoli potessero eseguirsi da soli come amministratore? Avremmo un altro Windows XP........

PM Quote
Avatar
TheDarkJuster (Member)
Guru^2


Messaggi: 1459
Iscritto: 27/09/2013

Segnala al moderatore
Postato alle 14:56
Venerdì, 09/10/2015
Crea un installer che crea una cartella che sarà scrivibile senza privilegi

PM Quote
Avatar
GN (Member)
Guru


Messaggi: 770
Iscritto: 30/04/2011

Segnala al moderatore
Postato alle 21:48
Venerdì, 09/10/2015
A mio parere la soluzione migliore sarebbe utilizzare una cartella apposita per il salvataggio di dati/impostazioni dell'utente, come la Dati Applicazioni. Non sono sicuro che funzioni ma potresti semplicemente provare a mettere %appdata%\nome_del_tuo_programma\ al posto di C:\ nel tuo codice (infatti, se provi a digitare %appdata% nella barra dell'indirizzo di una finestra di explorer o nella finestra Esegui che si apre con Win+R ti si apre la cartella Dati Applicazioni).

Non sono sicuro che aprendo un file da codice Delphi questa specie di shortcut funzioni, quindi come alternativa ti consiglio di leggere questo articolo http://delphi.about.com/od/kbwinshell/a/SHGetFolderPath.htm che spiega come farlo "nel modo giusto" con la funzione SHGetFolderPath, ricordando, come indicato alla fine dell'articolo, di aggiungere una sottocartella al path ritornato da quella funzione in modo da salvare i dati del tuo programma in una sua specifica sottocartella di %appdata%.

Per finire forse ti può interessare un elenco dei valori che puoi passare a SHGetFolderPath() nel caso volessi scegliere una cartella diversa da Dati Applicazioni: https://msdn.microsoft.com/en-us/library/windows/desktop/bb ....

Ultima modifica effettuata da GN il 09/10/2015 alle 21:53


PM Quote