COM Objekt mit globalen Variablen



  • Hi,

    ich arbeite an einer COM-DLL, die von mehreren Anwendungen aufgerufen wird. Ich würde innerhalb der COM-DLL gerne 'globale' Variablen anlegen, die nicht nur der jeweiligen DLL-Instanz zugänglich sind, sondern die instanzenübergreifend verfügbar sind.

    Was ist denn der Trick dabei?

    Danke schon mal,
    Tom



  • Es gibt keinen "Trick". Du erstellst einfach globale Variablen für die DLL, oder
    wenn dir das besser gefällt statische Klassenvariablen. Das die Variable
    natürlich nicht mehr existiert wenn die DLL entladen wird ist wohl klar (DLL-
    Instanz ??). Und das du den Zugriff auf diese Variablen synchronisieren
    musst weisst du hoffentlich auch.

    PS.: Das Thema gehört wohl nach WINAPI



  • Such mal nach "data_seg" in diesem Forum.



  • Danke,

    das habe ich gesucht -> klappt.

    Dass ich den Zugriff auf die gemeinsamen globalen Variablen synchronisieren muss ist mir klar - was mir nicht klar ist: Wie am besten?

    Innerhalb meiner Threads mache ich das per CriticalSection - aber geht eine CS auch instanzübergreifend?

    Thx,
    Tom



  • Nein.

    Aber Semaphore kann man irgendwie prozessübergreifend machen, IIRC.


Anmelden zum Antworten