Hallo,
ich habe eine bereits bestehende Anwendung (A1) in eine
DLL gewandelt um sie aus einer zweiten Anwendung (A2)heraus starten zu können. A1 erzeugt einen eigenen Thread (war ein wirklich guter Tip aus dem Forum
). A2 nuzte ich, um A1 Parameter zu übergeben, die dann in A1 weiter bearbeitet werden. Die Parameter übergebe ich via Buttons oder Edit-Felder usw. Betätige ich jetzt einen Button in A2, geht A1 in den Hintergrund, d.h. das offene Formular von A1 verschwindet in die Task-Leiste. Jetzt möchte ich zwei neue Methoden in A1 implementieren, nämlich SHOW und HIDE, d.h ich möchte A1 auf Tastendruck in den Hintergrund bzw.Vordergrund schalten, ohne A1 zu beenden. Dazu habe ich hier im Forum auch einiges gefunden, aber nichts funktioniert. Folgene Vorgehensweise habe ich mir zurechtgelegt.
Zunächst stelle ich am Ende von ThreadCreate über UsrIntThread.Thread3:=GetCurrentThreadID die ID von A1(meine Anwendung in der
DLL) fest und speichere sie in einer globalen Variablen. In A2 rufe ich dann im Event eines Button SetForegroundWindow(UsrintThread.Thread3) auf. Aber A1 kommt nicht in den Vordergrund. WARUM ????
Ich schnalls nicht
Grüße Bernd