none
Aus der MSDN-Hotline: Access 2007 und Windows-eigene DLLs

    Allgemeine Diskussion

  • Hallo zusammen,
    heute wurde uns bei der MSDN Hotline unter anderem folgende Frage gestellt:

    Ich möchte von Access 2007 aus PresentationCore.dll laden. Wie geht das?

    Unsere Antwort bzw. unser Lösungsvorschlag darauf war:

    Diese DLL und die anderen internen Bibliotheken kann man so nicht laden. Die einzigen Windows-eigenen DLLs, die Sie importieren sollten, sind unter Tools->References...->(Available References) aufgeführt. Benutzerdefinierte DLLs können natürlich ohne Beschränkungen geladen werden.

    Wir hoffen, vielen Besuchern der MSDN Foren durch das Posten dieses Problems und einer möglichen Lösung weiterhelfen zu können.

    Viele Grüße,
    Jonathan Best
    MSDN Hotline für MSDN Online Deutschland

    Disclaimer:
    Bitte haben Sie Verständnis dafür, dass wir hier auf Rückfragen gar nicht oder nur sehr zeitverzögert antworten können.
    Bitte nutzen Sie für Rückfragen oder neue Fragen den telefonischen Weg über die MSDN Hotline: http://www.msdn-online.de/Hotline
    MSDN Hotline: Schnelle & kompetente Hilfe für Entwickler: kostenfrei!

    Es gelten für die MSDN Hotline und dieses Posting diese Nutzungsbedingungen, Hinweise zu Markenzeichen Informationen zur Datensicherheit sowie die gesonderten Nutzungsbedingungen für die MSDN Hotline.

    Mittwoch, 15. Dezember 2010 16:16

Alle Antworten

  • Hallo Jonny
    Das stimmt so nicht ganz. Es ist sehr wohl möglich beliebige (COM)-DLLs zu laden, nicht nur solche, die in den Referenzen drin sind. Es bedingt einfach, dass diese über einen API Call angesprochen wird. Das geht in VGA identisch wie in VB Classic. Vorgehen ist:
    - API Referenz der DLL suchen
    - Deklaration der gewünschten Funktion aus der DLL
    - Aufrufen der so deklarierten Funktion
     
    Hier sind einige der wichtigsten Beispiele zu finden, wie das gemacht wird:
     
    Bei der Presentationcore.dll handelt es sich allerdings um ein .NET Assembly. Damit man auf dieses zugreifen kann, muss man einen COM-Wrapper für darin enthaltene Funktionalität schreiben, der die Bibliotheken des Managed Codes den COM Anwendungen zur Verfügung stellt.
     
    Hier ein 9-jähriger MSDN Beitrag, der das beschreibt:
     
    Gruss
    Henry
     
    Hallo zusammen,
    heute wurde uns bei der MSDN Hotline unter anderem folgende Frage gestellt:

    Ich möchte von Access 2007 aus PresentationCore.dll laden. Wie geht das?

    Unsere Antwort bzw. unser Lösungsvorschlag darauf war:

    Diese DLL und die anderen internen Bibliotheken kann man so nicht laden. Die einzigen Windows-eigenen DLLs, die Sie importieren sollten, sind unter Tools->References...->(Available References) aufgeführt. Benutzerdefinierte DLLs können natürlich ohne Beschränkungen geladen werden.

    Wir hoffen, vielen Besuchern der MSDN Foren durch das Posten dieses Problems und einer möglichen Lösung weiterhelfen zu können.

    Viele Grü�?e,
    Jonathan Best
    MSDN Hotline für MSDN Online Deutschland

    Disclaimer:
    Bitte haben Sie Verständnis dafür, dass wir hier auf Rückfragen gar nicht oder nur sehr zeitverzögert antworten können.
    Bitte nutzen Sie für Rückfragen oder neue Fragen den telefonischen Weg über die MSDN Hotline: http://www.msdn-online.de/Hotline
    MSDN Hotline: Schnelle & kompetente Hilfe für Entwickler: kostenfrei!

    Es gelten für die MSDN Hotline und dieses Posting diese Nutzungsbedingungen, Hinweise zu Markenzeichen Informationen zur Datensicherheit sowie die gesonderten Nutzungsbedingungen für die MSDN Hotline.

    Donnerstag, 16. Dezember 2010 04:03
  • Da hast du Recht, danke für die Links!
    Das würde wohl tatsächlich funktionieren, angenommen man baut seine eigene DLL und versucht dann von dort aus, die PresentationCore.dll anzusprechen. Die Umsetzung überlassen wir dem geneigten Leser zur Übung. ;-)

    Freitag, 17. Dezember 2010 13:52