Originariamente inviato da MItaly
Mi pare che tu stia facendo un gran paciugo, sia a livello di codice che di organizzazione dei thread.
Ad ogni problema corrisponde un thread. Questo (che provvederò a rinominare) rimane dedicato alla questione del file di backup, mentre per il passaggio dati tra form aprine uno separato.

Quanto al codice, in ogni caso questo
codice:
Dim direct As String = "System.Environment.GetFolderPath(Environment.SpecialFolder.Windows) & ""\prova.txt"""
non ha senso - se metti del testo tra virgolette questo viene interpretato, appunto, come testo, per cui "direct" assumerà come valore «System.Environment.GetFolderPath(Environment.Spec ialFolder.Windows) & "\prova.txt"»; quello che volevi fare probabilmente è:
codice:
Dim direct As String = System.Environment.GetFolderPath(Environment.SpecialFolder.Windows) & "\prova.txt"
che farà sì che direct assuma un valore del tipo «c:\Windows\prova.txt»; comunque non ha molto senso (un programma normale non ha i permessi per scrivere nella cartella di Windows, ed è giusto che sia così), ma almeno dal punto di vista del linguaggio è corretto.



Uhmm... dove iniziare...

Sicuro che non è un problema creare 10 mila topic diversi un due giorni?

Si, mi sono reso conto d'aver sbagliato alla grande per quanto riguarda le virgolette
(In ogni caso ho risolto semplicemente togliendole ed aggiustando il percorso, cioè mancava una slash)

Anche per quanto riguarda i diritti d'amministratore ho modificato "app.manifest" inserendo:
codice:
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
<-- È la cosa giusta da fare?
Ed ho dato per scontato che il programma ogni qualvolta lo Avvierò tramite "Avvia come Amministratore"

Secondo te sbaglio qualcos'altro nel codice (cioè dovrei ottimizzare
Riguardo i thread ancora non ci sono arrivato, appena arrivo studiarli ovviamente ripasserò i vari punti un cui sarà opportuno inserirli...