Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Ermitteln welcher COM-Client meine Anwendung gestartet hat (https://www.delphipraxis.net/149524-ermitteln-welcher-com-client-meine-anwendung-gestartet-hat.html)

Dawn87 23. Mär 2010 13:51


Ermitteln welcher COM-Client meine Anwendung gestartet hat
 
Hallo,

ich programmiere zur Zeit einen out-of-process COM Server (ActiveX-EXE).

Kann ich herausfinden ob meine Anwendung "normal" durch den Anwender gestartet wurde (z.B. durch einen Doppelklick im Explorer, etc.) oder durch das Instanzieren eines COM-Objekts aufgerufen wurde (CreateOleObject) ?

Grüße
Stefan

shmia 23. Mär 2010 18:00

Re: Ermitteln welcher COM-Client meine Anwendung gestartet h
 
Zitat:

Zitat von Dawn87
Kann ich herausfinden ob meine Anwendung "normal" durch den Anwender gestartet wurde (z.B. durch einen Doppelklick im Explorer, etc.) oder durch das Instanzieren eines COM-Objekts aufgerufen wurde (CreateOleObject) ?

Delphi-Quellcode:
uses ...,comserv;

var
  msg : string;
...
case ComServer.StartMode of
  smStandalone: msg := 'ich bin ganz allein';
  smAutomation: msg := 'jemand steuert mich gerade';
  smRegServer: msg := 'ich registriere mich';
  smUnregServer: msg := 'bye, bye';
end;
ShowMessage(msg);

Dawn87 25. Mär 2010 08:50

Re: Ermitteln welcher COM-Client meine Anwendung gestartet h
 
Funktioniert Super! Danke.

Wapiti 21. Apr 2010 19:54

Re: Ermitteln welcher COM-Client meine Anwendung gestartet h
 
Gibt es auch die Möglichkeit das startende Client- bzw. Container-Objekt zu erhalten?


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:43 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