Newsgroup: it.comp.lang.delphi
Titolo: Richiamare finestre standard di windows

In gestione risorse ci sono 2 pulsanti sulla toolbar che mi interessano:
copy to, move to.
Sapete se c'č qualche modo per poter richiamare quelle finestre tramite api
o chiamate dde (un pň come avviene per la Search)? 
-- 
Lis
ICQ@Home #7317603sette     ICQ@Work #16285702tre
Mercatino: 
http://lis77.bravepages.com
 (aggiornato *con foto*: 16/06/03)

 o chiamate dde (un pņ come avviene per la Search)?
Le api di windows
CopyFileEx ti fa solo copiare un fil da una parte all'altra e a seconda del
parametro che gli passi ti fa spostare i file.
Cerca tra gli help di delphi (start->Programmi->Borland delphi 6 -> help->MS
SDK Help files -> Win 32 Programmer's reference) e partendo da copyfileex
dovresti anche poter trovare le api che ti fanno fare quello che vuoi tu.
ciao fabrizio

On Mon, 21 Jul 2003 15:19:14 +0200, Fabrizio Mancini wrote:
Per la precisione SHFileOperation et simili.
ciao fabrizio

 parametro che gli passi ti fa spostare i file.
Più che la copia del file quello che mi interessa è la possibilità di poter
sfruttare una chiamata a windows (con api o tramite DDE come per chiamare la
Search) che "faccia tutto lei".
Quello che vorrei è che, preparato l'elenco dei files che mi serve
copiare/muovere, possa chiamare questa "funzione" di Explorer. Non è per
pigrizia che non la scrivo (penso che bastino ShBrowseForFolder e
ShFileOperation) ma è per avere più omogenità possibile tra la mia
applicazione ed Explorer, tutto qui.
Comunque mi sembra di capire che devo farla io...no problem :-)


 Comunque mi sembra di capire che devo farla io...no problem :-)
Si fondamentalmente è cosi. Win ti mette a disposizione le interfacce per la
copia dei file, mentre le finestre che tu vedi sono si un mix di api ma
nulla di pronto, tutto il resto è stato implementato dai programmatori di
winzozz (da  quello che so io)
Se vuoi qualcosa di molto simile è che richieda poche operazioni puoi
guardare tra le jvcl che hanno qualcosa di + delle common dialog e che fanno
dei wrapper intorno alle api di windows.
di + nin zo.
ciao fabrizio

 programmatori di winzozz (da  quello che so io)
Non direi proprio che sia cosě...
Ma la ShBrowseForFolder l'avete mai usata?
--
Andrea /\/\agni
ICQ#: 174108000

tutto il resto è stato implementato dai programmatori di winzozz
Che vuoi dire ?
-- 
Andrea Laforgia
Open Delphi Manual
http://groups.yahoo.com/group/delphi_open_manual/

 Ma la ShBrowseForFolder l'avete mai usata?
ehm si ma di fatti mai detto di essere ferrato con le api di windows!! ;-))

 Che vuoi dire ?
Quello che volevo dire era che le api a disposizione sono quelle delle
shfileoperation, e non ce ne sta una precisa che emula il comportamento di
Copy to.. o Move to... di explorer direttamente. Da quello che ho capito Lis
cercava una api che emulasse tale comportamento, e quello che volevo dire č
semplicemente non c'č; quello che usiamo noi per la selezione dei file č
stato implementato dai programmatori di windows, che poi passano la lista
dei file alle api per lo spostamento/copia. Ripeto, almeno *credo* sia cosě,
e se cosi non fosse me lo spiegate cosi lo so pure io? (almeno imparo qlcsa
di nuovo).
ciao fabrizio

 api per lo spostamento/copia.
Quello che dici è più o meno corretto, solo non sta in piedi la distinzione
"programmatori di windows" / "chi ha scritto la API" ...
La funzionalità di CopyTo/MoveTo sono completamente implementate dalla
SHFileOperation, l'interfaccia grafica di cui si sta parlando fa parte
dell'applicazione explorer.exe (la shell standard di Windows) ma è resa
disponibile tramite le funzioni SH<XXX> (l'SH sta appunto per SHell).
Direi che quasi tutte le "dialog standard" di windows sono accessibili dai
nostri programmi in modo abbastanza agevole [a parte il giro perverso di ID
e risorse varie da liberare e tradurre di alcune parti della shell].
Tutto qua...
Ciao :-)


dei file alle api per lo spostamento/copia. 
Per programmatori di Windows intendi coloro che hanno scritto Windows
? ti riferisci ai creatori della shell ?  Io credo che Lis avesse
bisogno delle finestrelle di dialogo che informano sui file
attualmente spostati o copiati e queste sono fornite da
SHFileOperation, impostando l'opportuna opzione per la loro
visualizzazione.


 visualizzazione.
No, no, aveva capito bene Fabrizio: conoscevo già prima l'esistenza della
BrowseForFolder e FileOperation ma chiedevo se esisteva un "qualcosa" che le
racchiudesse completamente, magari tramite una ShellExecute ad Explorer.exe
con qualche parametro, il tutto con il fine ultimo di avere l'esatto
comportamento dell'Explorer di windows.
Comunque ho risolto ;-)


 Ciao :-)
ok la storia adesso è un po + chiara, mi riprometto sempre di dare uno
sguardo un po + approfondito alle api, ma visto appunto che mi ci incarto
sempre con molta facilità mando sempre il tutto a spigolare cercando delle
soluzioni alternative tipo le librerie jedi....
lo so vabbè mi metto a studiare prima o poi..
ciao :-))

 Comunque ho risolto ;-)
Si ma adesso dicci come!!! ^__^
Fabrizio

 Si ma adesso dicci come!!! ^__^
Pensavo fosse ovvio :-)
ShBrowseForFolder (SelectDialog della unit FileCtrl) e subito dopo una
ShFileOperation
