Newsgroup: it.comp.lang.delphi
Titolo: funziona confronta file, ma riporta il path errato??!!

E' la funzione qui sotto che mostro che nn va! Non capisco perche' mi
riporti il percorso sbagliato di dove si trova il file,  esempio:
mettiamo
che
gli passi la path d:\miacartella\miofile.exe lui mi ritrova il file
dicendo
che il percorso sia c:\borland\delphi7\projects\miofile.exe, ma non
capisco
il motivo???!!!
Potete dare un 'occhiata alla funzione, non riesco a capire il
problema, con
questa passo anche la dimensione e la data del file e quelli sono
ok!!??
________________________________________________________________________________________________
procedure confrontafile(Path: String; files: string);
//
QUI PASSO LA PATH CORRETTA DEL FILE DOVE DOVREBBE TROVARSI, E IL FILE
STESSO!!!
var
TSC: TSearchRec;
 begin
  try
    if FindFirst(Path+'\*.*', faAnyFile, TSC) = 0 then
    begin
      repeat
        if (TSC.Name <> '.') and (TSC.Name <> '..') then
        begin
          if ((TSC.Attr and faDirectory) <> 0) then
           begin
           confrontafile(path+'\'+TSC.Name, files);
           end
          else
           if StrComp(PChar(Files), PChar(TSC.Name)) = 0 then
//condizione
che confronta il file passato alla procedura chiamata
                    //dal doppio click nel treeview1
            begin
            stack3:= ExpandFileName(TSC.Name);
//riporta il file con la sua path per esteso
            showmessage(stack3);
//mostra :  "c:\borland\delphi7\projects\miofile.exe"  invece di
"d:\miacartella\miofile.exe"
            Application.ProcessMessages;
            Stack1:= (IntToStr(TSC.Size));
//assegna alla variabile la dimensione del file
            stack2:=DateTimeToStr(FileDateToDateTime(TSC.Time));
//assegna alla variabile la data del file
            end;
         end;
      until FindNext( TSC ) <> 0;
    end;
____________________________________________________________________________________________________________
Grazie a tutti
Daniel

 ok!!??
 ________________________________________________________________________________________________> procedure confrontafile(Path: String; files: string);> //> QUI PASSO LA PATH CORRETTA DEL FILE DOVE DOVREBBE TROVARSI, E IL FILE> STESSO!!!>> var> TSC: TSearchRec;>> begin>  try>    if FindFirst(Path+'\*.*', faAnyFile, TSC) = 0 then>    begin>      repeat>        if (TSC.Name <> '.') and (TSC.Name <> '..') then>        begin>          if ((TSC.Attr and faDirectory) <> 0) then>           begin>           confrontafile(path+'\'+TSC.Name, files);>           end>          else>           if StrComp(PChar(Files), PChar(TSC.Name)) = 0 thenPerche' usi una funzione C quando in Pascal basta porre:   if Files=TSC.Namethen..Cmq potresti avere il problema del "case", quindi ti suggerisco dimodificare l'if cosi':if UpperCase(Files)=UpperCase(TSC.Name) thenCiao Giorgio

> il motivo???!!!
La funzione ExpandFileName non fa altro che aggiungere la stringa relativa 
alla path del tuo progetto al nome del file (percorso relativo).
Per trovare la vera Path dovrebbe fare un controllo di tutti i file sul 
rigido e il risultato potrebbe non essere unico... 

 rigido e il risultato potrebbe non essere unico...
Pensavo che facesse una ricerca su disco la mia funzione :O, visto che
come path passavo d:\miacartella, la stessa che poi passo ad una
funzione simile a quella che ho postato, che mi popola un treeview e mi
estrae tutti i file e le cartelle visualizzandole appunto! Il mio
intento era quello di controllare tutti i file e trovare quello uguale
ed estrarre la path per passarla alla shellexecute....
In poche parole, treeview con tutte le cartelle e file, poi clicco sul
file nel treeview e me lo visualizza in un listview con le sue
proprieta' size ed data, poi dovrei fare click sul file presente sul
listview e farlo partire(shellexecute), ovviamente se ho un percorso
relativo questo non e' possibile!?!
Come posso risolvere e/o come mi porto sempre in memoria il reale
percorso
Grazie ancora
Daniel

> Pensavo che facesse una ricerca su disco
Qui non si tratta di PENSARE o PRESUMERE.
Si apre la guida in linea e si LEGGE che accidenti fa una funzione, ci
si DOCUMENTA, xche come diciamo a Napoli "me pare avette 30 anni",
ovvero, chi disse "mi sembra" ebbe 30 anni di carcere...
A.

 ha scritto nel messaggio 
news:1150292830....@c74g2000cwc.googlegroups.com...

Mo come se dice a Roma mai Rotto!!!!
Sono dieci volte che entri nei miei post e fai il matusalemme della 
situazione, se nelle guide avevo trovato quello che cerco, non l'avrei 
chiesto...
Se non ti va di rispondere, non sprecare il tuto tempo e fai tutti i debug 
che vuoi!!!
E poi non ho chiesto fatemi la funzione, ho detto come posso estrarre un 
path da un file, visto che mi riporta il percorso dell'eseguibile; e se 
quello ce facevo era la strada giusta o meno...
Detto questo faccio volentieri a meno del tuo aiuto, quindi, visto che non 
e' possibile inserirtI in una blacklist,(se sapessi farlo in delphi lo farei 
:) evita di rispondere ai miei post!)
Grazie
Con affetto
Daniel 

 Detto questo faccio volentieri a meno del tuo aiuto,
A parte che piangero disperatamente per i prossimi 6 mesi, tra poco non
ti servira + l'aiuto di nessuno xche finito cio che ti serve sparirai,
come altri hanno fatto prima di te.
A.

>A.
Ma se parti con questi pregiudizi, non dimostri  neanche un po' di buon
senso!!!, non e' per colpa di altri che io non debba avere nessuna
possibilità... PER QUESTO TI RINGRAZIO!
Visto che vorrei fosse il mio lavoroquesto credo che non sprariro molto
presto! Anzi spero di poter aiutare altri come me in fututro e di non
diventare come te.
Riguardi
Daniel

 Riguardi
Prima mi dici "melgio romano che napoletano" e poi mi dici "riguardi"?
Cambia pusher....
A.

 A.
A. chi??
Ciao
Daniel 

 A. chi??
A differenza di tanti, io uso il mio vero nome ed il mio vero cognome
sui ng, e non da ieri.
E non vado sullo stesso ng con nick diversi...
Finiamola qua, altrimenti tra un po scrivi post nei quali dici di non
aver tempo di documentarti xche sei impegnato a discutere con me.
A.

 A. chi??


A.
Resoconto di tutto, io mi firmo con il mio nome per esteso compreso cognome 
che per altro e' il mio nick e ancora anche la mia vera mail e puoi 
controllare...
Non ho e non voglio offendere nessuno tanto meno incazzarmi, visto che di 
problemi nella vita ce ne sono altri...
Chiedo solo che se hai miei post devi rispondere studia, lo stai dicendo 
alla persona sbagliata, visto che sono 25 anni che studio, e non trovo nulla 
di male nei prof., amici e ng, perche' : > io e il libro e basta <, questa 
e' una cosa sbagliata, infatti i migliori risultati si ottengono in team.
Tutto questo perche' bisogna premere f1 invece di consigliare 
SearchTreeForFile, e' proprio sbagliato a mio parere! Ma nella guida win32 
sdk cosa dovevo scrivere per trovare SearchTreeForFile?
Ciao
Daniel 

non volevo offenderti, Daniel. Non e' SBAGLIATO lavorare in team, anzi.
L'incontro/scontro con altre persone in ambito lavorativo e' una
esperienza forte, e se vissuta nel modo giusto ti arrichisce di
parecchio non solo sul pianto tecnico, ma anche per cio che riguarda il
relazionarsi con le persone.
E' la DIPENDENZA dal team che e' sbagliata, il fatto che se 6 solo
davanti ad un rogna, rischi di restare al palo xche non 6 preparato ad
afrontare i casini da SOLO.
A.

 Meglio romano che napoletano!
  Spero ti sia pentito, subito averlo scritto.
  Fossi in te, prima di mandare un messaggio, lo rileggerei,
  e conterei fino a 100. Anche perchč se cosě non fosse,
  ti resta  tutta l' antipatia dei napoletani e dintorni.
 Carmine

 ha scritto nel 
messaggio news:o7Ckg.12288$bj6....@tornado.fastwebnet.it...


  Carmine
Andrea

 ha scritto nel messaggio 
news:44930878$0$16943$4faf...@reader4.news.tin.it...

Ma COS' E  una CONGIURA, ma perche' ho dimostrato di non *voler 
imparare*?... oltretutto ero stato anche offeso di non avere neuroni, e poi 
alla fine abbiamo chiarito non capisco questa tua afferamazione!
Inoltre ho ribadito che e' stata una battuta conseguita dal fatto di due 
frasi di dialetto diverso!
Ma cmq! non so piu' che dire! E non so se hai letto il mio ultimo post : lo 
riporto!:
___________________________________________________--
Ma infatti era una risposta ironica alla sua battuta napoletana, in romano
del post precedente!
ciao a tutti
P.S.
Mi sto impegnado a non postare sull'ng a nastro(come si dice a Roma ) :)
Ho messo anche un adesivo rosso  sull'F1! :)
Ciao a tutti
Daniel
___________________________________________________--
Ciao di nuovo a tutti napoletani e romani(tra l'altro mia zia e' napoletana 
e anche mio cugino... )!
Ciao a tutti di nuovo
Daniel 

 Daniel 
Andrea

 Andrea
Non ho ne voglia ne tempo di riniziare un botta risposta di nuovo...
Forse non l'ho riportato , ma findclose e' in tutte le funzioni! ah lo metto 
nel blocco finally , forse era l'esempio dove avevo messo un try except per 
prova, non ricordo!
Per il copia in colla mi scuso ma lo indento e nella mia finestra lo sistemo 
ma quando lo posto si vede male?!(staro' piu' attento)...
Non ho chiesto mica la luna, sembra che vi sto rubando qualcosa dalle tasche 
o che ho messo le mani addosso a qualcuno :(
Mi sembra tutto un pò esagerato...
Cmq buon fine settimana a tutti, anche a quelli arrabbiati con me ;)
Ciao
Daniel