[ Delphi 5, Win 7 ]
Hi,
ist für mich leider nicht so ganz einfach zu beschreiben, aber ich versuche es mal.
Ich schreibe gerade ein älteres Programm von mir nochmal vollkommen neu (from Scratch 8)
und den ShellExecuteBefehl verwende ich wie immer.
Delphi-Quellcode:
ProgPFAD := 'D:\npp\notepad++.exe';
Pfadname := 'E:\hello.cpp';
ShellExecute(0, 'open', pchar(ProgPFAD),
PChar(AnsiQuotedStr(Pfadname, '"')),
PChar(ExtractFileDir(Application.Exename)),
SW_SHOW); // 29.01.2008 - 11.18-49
Doch in meiner neuen Version wird notepad zwar auch korrekt aufgerufen und angezeigt, allerdings , wenn ich npp (oder andere so aufgerufene Programme) wieder schließe, zeigt sich plötzlich nicht mehr MEIN PROGRAMM, sondern es sind 5 weitere Programme in der TaskSwitch nach oben und links gerutscht, sodaß ich erst 5x ALT + TAB drücken muß, um wieder zu meinem Programm zu kommen.
Das war früher nicht so. Da hatte ich einfach das "executete" Programm wieder geschlossen, und sofort hatte mein Programm wieder den Focus.
Hat jemand eine Idee, warum das sein kann?
Ich verwende immer noch Delphi5 und Windows 7. OK, klar MS-Updates sind eingespielt worden.
auf dem Screenshot, zeigt sich nach Execute normal mein Programm an Platz
(2),
auf
(1) ist das ausgeführte Programm in der TaskSwitch.
doch wie oben angesprochen befindet sich mein Programm jetzt OFT weiter hinten in der Reihenfolge auf
(3)
Nicht immer, aber unregelmäßig manchmal.
Nur Warum?
Ich hoffe, ich konnte das einigermaßen verständlich beschreiben
und jemand hat eine Idee, warum das so ist.. wäre wirklich hilfreich - wegen der Ergonomie im Programmablauf.
Danke schon mal