Newsgroup: it.comp.lang.visual-basic
Titolo: [?2] File TEMP del c.#@!*

Avete notato che i programmi in VB5 scrivono, al loro avvio, un file TEMP
nella cartella dei file temporanei (file che viene poi cancellato alla
chiusura del programma)?
Avendo fatto un programmetto sempre residente in memoria per
attivare/disattivare lo screen saver, alla chiusura di Windows tale file
resta nella suddetta cartella e così, al seguente avvio di Win, ho due file
TEMP (e così via...).
Come fare per ovviare a tale fastidioso inconveniente?
Grazie
--
GIAN LUCA DEI
---------------------------------------------------------------------------
E-mail: 
g...@caen.it
HomePage: 
http://club.caen.it/paginepersonali/gld/
---------------------------------------------------------------------------
Software utilizzato: Win 98 (IE4) - VB 5 (SP3) *** ORIGINALI

 TEMP (e cosě via...).
Prova a gestire la "OnUnload" del form principale programma...
Insomma, quando si chiude gli fai pulire la temp...
In caso non sia possibile, glielo fai fare all'avvio del programma...
--
--
Don't let your Fears stand in the way of your Dreams
--
Elena *DElyMyth* Franco
ICQ# 8761263
dely...@delymyth.it
http://www.delymyth.it/
 
http://www.delymyth.it/rioshell/
--

In caso non sia possibile, glielo fai fare all'avvio del programma...
All'avvio è un po' un casino perchè il programma dovrebbe conoscere il nome
del file temp che egli stesso ha creato nella sessione precedente di WIndows
(infatti, anche se volessi ripulire la temp all'avvio del programma, ci
sarebbe sempre il nuovo file temp)
Inoltre io non vorrei ripulire completamente la temp, ma solo eliminare quel
file.
Boh!

 file.
Pero'...
Se il file e' in uso non puo' venire cancellato...
Mentre se non e' in uso si'...
Io scriverei una breve procedurina che pialli la temp (gestisci la On Error
in caso l'errore sia, mi pare, 13)...
Per il resto, la pulizia periodica della temp e' anche consigliata (lo dice
una che per un certo periodo cancellava TUTTO appena avviava il pc...)...
E per il resto, occhio che non ci siano altre vaccate nella temp (insomma,
cancella solo i file che cominciano con "~" o hanno estensione .TMP...)
Mi sembra la soluzione migliore...


 sarebbe sempre il nuovo file temp)
Scusa, forse non ho capito io... il file lo apri tu con una Open nel
tuo programma o parli dei file che crea il VB in fase di design ?
Nel primo caso il nome lo sai già, il numero anche, fai una
Close NumeroDelFileAperto e poi Kill NomeDelFileAperto.
Nel secondo caso, vuol dire solo che si è bloccato il programma
o VB mentre programmavi, quindi il file temporaneo è rimasto lì.
Questi file sono del tipo VBxxxx.TMP, uno per ogni form e (credo)
uno per ogni modulo. Per questi, esci da VB e cancelli quello che vuoi...
Se sono io che non ho capito, spiegami quando viene creato il file, please...
Bye, G.
--
---------------------------------------------
    Le risposte alle tue domande le trovi
    sul Sito Comune di questo NewsGroup:
 
http://www.murialdo.it/it_lang_vb
       ... e nell'help in linea !
---------------------------------------------
Real E-address: 
gaet...@hotmail.com

cancella solo i file che cominciano con "~" o hanno estensione .TMP...)
Sulla pulizia della temp e del pc in generale sono d'accordo anch'io
(anch'io sono un semimaniaco che pulisce temp, riordina il sistema
regolarmente con unistaller, fa spesso uno scandisk e un defrag).
Solo che se te fai un programma, tale programma deve cancellare solo il file
temp che crea, in quando gli altri file devono essere eliminati solo per
volontà del padrone del pc.
Almeno, io la penso così.
Cmq, grazie

>Se sono io che non ho capito, spiegami quando viene creato il file,
please...
Ti spiego.
Prova ad avviare un exe compilato con VB guardando la cartellina temp
aperta. Vedrai che verrà creato un file temporaneo, di quelli brutti con la
~.
Tale file, poi sparisce quando chiudi l'eseguibile.
Fammi sapere ti fa anche a te così.

 mi ha risposto così:

Azz, porc zozz ecc. ecc. ... ciairaggionetu, lo fa !  Non in tutti i prog, ma lo fa !
Non ci avevo mai fatto caso !  :-(((( Un'altra sorpresa dal vosto amico VB...
Se esci regolarmente dal prog, però, vedo che li cancella tutti, forse li lascia
se esci con end, o forse dipende da qualche componente particolare...
Ora è troppo tardi per mettermi a fare prove, domani ci dò un'occhiata,
devo cercare di capire quando vengono creati e perché.
Intanto ho visto che nei programmi miei vengono sempre cancellati,
all'uscita, in quelli di altri a volte rimangono.
P.S.: fai chiamate alle API, nel tuo prog ? Magari mandami in mail qualche
particolare in più, ho bisogno di indizi...
Dal 221B di Baker Street, un Paperino travestito da Sherlock Holmes.


 Almeno, io la penso così.
In effetti hai ragione, pero' se questo programma ti riempie la temp di
vaccate inutili, in qualche modo le devi pur togliere, no ?
Se non puoi sapere quali sono i file che ha creato lui, il modo piu'
semplice e' la cancellazione almeno di tutti i file "sospetti",
identificandoli tramite estensione e qualche altro carattere strano...
Pero' anche li'...
L'utente ha sempre ragione e se si vuole collezionare file temporanei non si
ha nessun diritto di cancellarglieli "a tradimento"... :-|


 Dal 221B di Baker Street, un Paperino travestito da Sherlock Holmes.
Brrr! Che brutta visione! ;-)
--
Roal Zanazzi
z...@iol.it