![]() |
Sandbox programmieren
Morgen.
Ich glaube das Ding, das ich machen will heißt Sandbox. Das ist nur zur Übung gedacht. Ich hab schon das Forum durchsucht, aber nicht gefunden, was ich meinte. Mein Problem ist momentan folgendes: Ich will ein Programm starten (ShellExecute) und schnapp mir das, was ShellExecute zurückgibt. (Das Handle, oder?) Dann will ich, dass das Programm auf meinem Panel angezeigt wird (Panel1), also dass das Programm in Panel1 ist. (Panel1.Handle:=ProcHandle hab ich schon probiert) Und schließlich will ich das Programm auch noch beenden (TerminateProcess(ProcHandle) macht überhaupt nix.) |
Re: Sandbox programmieren
Das ist keine Sandbox. Eine Sandbox ist eine komplett abgeschottete Umgebung in der der Prozess keinen Scahdenanrichten kann. Eine VM wäre so was.
Such dir das Hauptfenster mit FindWindow und setze das Parenthandle neu mit Setparent auf das Panel deiner anwendung. Shellexecute liefert kein Handle zurück: Zitat:
|
Re: Sandbox programmieren
Jetzt wo dus erwähnst, fällt mir wieder ein, das mit dem ShellExecute Fehler schon mal irgendwo gelesen zu haben.
Aber ich habe noch nicht ganz verstanden, wie ich FindWindow einsetze. Woher kriege ich die Werte, die ich für die Parameter brauche? Bitte mal ein Beispiel. |
Re: Sandbox programmieren
Entweder im Forum mal suchen oder im MSDN gucken:
![]() |
Re: Sandbox programmieren
Du hast meine Frage nicht ganz gelesen. Ich weiß, was das für Werte sein sollen, aber woher ich die kriege, ist die Frage.
|
Re: Sandbox programmieren
starte das programm mit
![]() |
Re: Sandbox programmieren
Gibt das nicht einen Boolean?
|
Re: Sandbox programmieren
jo aber in der PROCESS_INFORMATION struct steht die prozessid drin, über die du an das windowhandle kommst:
siehe beitrag von sepp, hier ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:17 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz