Delete / Löschen

Q:Unterscheidung eines Aufrufs eines IDispatch Interfaces vo

"Martin Richter [MVP]"
02.09.2008 - 16:11
Hi!

Situation:
Ich habe viele COM Objekte die alle, duale Interfaces haben.
Der Server selbst ist eine EXE (Out of Process).
Die Objekte selbst können durch mein Programm selbst erzeugt werden,
oder auch von Extern.

Frage:
Kann ich unterscheiden ob eine bestimmte Methode über IDispatch von
"extern" aufgerufen wird, d.h.zum Beispiel von einem VBS-Skript.
Im Gegensatz dazu möchte ich unterscheiden könne, dass die entsprechende
Methode direkt aus meiner EXE aufgerufen wurde.

--
Martin Richter [MVP] WWJD http://blog.m-ri.de
"A well-written program is its own heaven; a poorly written
program is its own hell!" The Tao of Programming
FAQ: http://www.mpdvc.de Samples: http://www.codeproject.com

unknown (MSG-ID logged)
02.09.2008 - 17:20
Hallo Martin!

Frage:
Kann ich unterscheiden ob eine bestimmte Methode über IDispatch von
"extern" aufgerufen wird, d.h.zum Beispiel von einem VBS-Skript.
Im Gegensatz dazu möchte ich unterscheiden könne, dass die entsprechende
Methode direkt aus meiner EXE aufgerufen wurde.

Ich würde das wahrscheinlich mittels CoGetCallContext versuchen. Diese
Funktion muss fehlschlagen, wenn der Aufruf nicht von extern kommt.

Gruß,
René

"Martin Richter [MVP]"
03.09.2008 - 14:13
Hallo René!

Ich würde das wahrscheinlich mittels CoGetCallContext versuchen. Diese
Funktion muss fehlschlagen, wenn der Aufruf nicht von extern kommt.

Herzlichen Dank! Das funktioniert perfekt!

--
Martin Richter [MVP] WWJD http://blog.m-ri.de
"A well-written program is its own heaven; a poorly written
program is its own hell!" The Tao of Programming
FAQ: http://www.mpdvc.de Samples: http://www.codeproject.com




Share/Bookmark