2010-11-18 10 views
5

Ich verstehe, dass ich eine 32-Bit-DLL in einem 64-Bit-Prozess nicht laden kann. Ich habe eine 32-Bit-DLL (VB6-Komponente), ohne Quellcode, die in einem Excel-Automatisierungsmakro geladen wird. Was sind meine Möglichkeiten?32-Bit-DLL in Office 64 Bit

Antwort

3

32-Bit-Add-Ins sind not supported auf 64-Bit. Microsoft recommends die 32-Bit-Version von Office verwenden, wenn Sie in die Speicherbeschränkungen eines 32-Bit-Prozesses ausgeführt werden, die nur wahrscheinlich passieren, wenn Sie mit extrem großen Tabellen müssen befassen:

Die Empfehlungen für die Ausgabe von Office 2010 zu installieren ist wie folgt:

  • Wenn Benutzer in Ihrer Organisation auf vorhandene Erweiterungen an Office abhängen, wie ActiveX-Steuerelemente, Drittanbieter-Add-in, auf frühere Versionen von Office gebaut Inhouse-Lösungen Bei 32-Bit-Versionen von Programmen, die direkt mit Office verbunden sind, empfehlen wir die Installation von 32-Bit-Office 2010 (Standardinstallationsprogramm) auf Computern mit 32-Bit- und 64-Bit-unterstützten Windows-Betriebssystemen.

  • Wenn einige Benutzer in Ihrer Organisation Excel-Experten sind, die mit Excel-Arbeitsblättern arbeiten, die größer als 2 GB sind, können sie die 64-Bit-Version von Office 2010 installieren. Haus Lösungsentwickler, empfehlen wir, dass die Entwickler haben Zugriff auf die 64-Bit-Version von Office 2010, so dass sie testen und aktualisieren sie Ihre Inhouse-Lösungen auf der 64-Bit-Edition von Office 2010.

Wenn Sie aufgrund der Speicherbeschränkungen mit der 64-Bit-Version arbeiten müssen, haben Sie the following options:

  • Wenn Sie den Quellcode haben, können Sie eine 64-Bit-Version selbst generieren,

  • Sie den Hersteller für eine aktualisierte Version kontaktieren,

  • Sie können für eine Suche alternative Lösung.

Es gibt tatsächlich eine vierte Option, die in diesem Artikel wird von Microsoft nicht erwähnt: Sie können eine 32-Bit-out-of-Process-COM-Server erstellen, die zwischen Ihren 64-Bit-Makros als Proxy dienen und die Legacy-32-Bit-COM-Komponenten oder erstellen Sie eine COM + -Anwendung. Eine Probe wird hier zur Verfügung gestellt:

Accessing 32-bit DLLs from 64-bit code

+0

Es gibt keine 64-Bit-Compiler für VB6. – Joshua

+0

@Joshua: Nein, gibt es nicht. Der Microsoft-Artikel spricht jedoch über allgemeine Lösungen für dieses Problem. –

+0

"Zugriff auf 32-Bit-DLLs aus 64-Bit-Code" wurde verschoben. Ich habe den Link repariert. –