shellexecute - Folder w folderze

0

w jaki sposob sprawic, aby otwierajac pare folderow po kolei , otwieraly sie wszystkie w jednym oknie ?

0

Jak można otworzyć więcej niż jeden folder w jednym oknie? Sprecyzuj to troche [???]

0

to znaczy, ze gdy mam np:

ShellExecute(Handle, 'open', 'explorer.exe', pchar(edit1.Text), pchar(edit1.Text), SW_SHOWMAXIMIZED);
ShellExecute(Handle, 'open', 'explorer.exe', pchar(edit1.Text), pchar(edit1.Text), SW_SHOWMAXIMIZED);

i to sa dwa rozne adresy, to kazdy z nich otwiera sie w nowym oknie(czyli sa dwa). a chcialbym zrobic, aby po wywolaniu nastepnego shellexecute otworzyl sie on w oknie poprzedniego (czyli moze byc pare shellexecute, ale tylko w jednym oknie sie otwieraja)

0

Było jakiś czas temu, bodajże musisz wywołać ShellExecute z uchwytem okna w którym chcesz coś otworzyć. (Chyba... :P)

0

wymacilem takie cos

var
handle:THandle;
begin
Handle:=FindWindow(nil, Pchar(linia));
filelistbox1.Directory:=edit1.Text;
ShellExecute(Handle, 'open', 'explorer.exe', pchar(edit1.Text), pchar(edit1.Text), SW_SHOWMAXIMIZED);

gdzie przykladowo linia=Moje Dokumenty, edit1.tex=sciezka do dokumentow, ale niestety to nie chce chodzic...

0

to zależy od programu czy sie otworzy w otwartym już oknie czy nowym, więc można go tylko poprosić o ile autorzy przewidzieli taką opcję

w przypadku explorera jest to zazwyczaj niechciane a wystarczy zdaje się nie wpisywać:

ShellExecute(Handle, 'open', 'explorer', 'sciezka', 'sciezka', SW_SHOWMAXIMIZED);

tylko

ShellExecute(Handle, 'open', 'sciezka', nil, 'sciezka', SW_SHOWMAXIMIZED);

ale chyba tylko w ostatnim oknie explorera o ile jest ono "na wierzchu" tj. najbardziej po prawej na pasku zadań
ale może explorer ma jakieś przełączniki to robiące
za to przez DDE prawie na pewno możesz to zrobić

0

zrobilem jak radziles :) zmienilem shellexecute i niestety, ale nadal nie idzie w jednym oknie :(

Jakis inny pomysl... mozliwosc ?

0

explorer nie ma jednak takiego przełącznika a otwiera to samo okno tylko jeśli ma już otowrzone takie z identyczną ścieżką, więc chyba jedyna opcja to zamknięcie starego okna i normalne otworzenie nowego

możesz jeszcze zobaczyć, może da się to przez dde zrobić, ale jeśli nigdzie nie widziałeś czegoś takiego w jakimś programie to mała szansa

0

Mozna poprobowac z ukrytymi komunikatami dla okien explorera np: CWM_SETPATH, CWM_GETPATH

1 użytkowników online, w tym zalogowanych: 0, gości: 1