Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

UseDLL & Win NT4


3 replies to this topic

Andy_30

Andy_30
  • Members
  • 6 posts

Posted 03 January 2003 - 12:37

Hi und Happy new year @ll!

mein Problem ist schnell beschrieben.

Ich habe eine VC++ dll in mein InstallShield Projekt per UseDLL eingebunden. Das funktioniert unter Ein9x, Win 2000 und WinXP einwandfrei. Nur unter Win NT4 lässt sich diese dll nicht in den Speicher laden. Wenn ich UseDLL aufrufe ist das Resultat dieses Aufrufes immer -1.

Hat evtl. jemand schon mal ein ähnliches Problem gehabt oder kann mit jemand sagen was ich unter Win NT4 beachten/ anders machen muss als unter den anderen Betriebssystemen?

Bin für jede Hilfe dankbar!

Bis bald
Andreas

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 04 January 2003 - 15:23

Nimm mal den Dependency Walker. Bestimmt fehlt auf NT4 irgend eine Laufzeitdatei bzw. ist zu alt.

Andy_30

Andy_30
  • Members
  • 6 posts

Posted 06 January 2003 - 15:33

Sorry, hab ich vergessen zu erwähnen im ersten Posting.

Der Dependency Walker zeigt an das alles okay ist. Auch scheint es nicht an veralteten Dateiversionen zu liegen, zumal alle evtl. kritischen dll´s im Verzeichnis der zu ladenen dll auch noch mal in einer Version vorliegen, mit der die zu ladene dll nachweislich läuft.

Diese beiden Ansätze habe ich also mit relativ hoher Wahrscheinlichkeit schon ausgeschlossen.

Merkwürdiger Weise funktioniert übrigens auch ein Win-API Call zum Laden einer DLL aus einer MFC/C++ EXE heraus auch nicht unter WinNT.

Irgendwas machen wir hier also scheinbar noch komplett falsch. Wir werden jetzt alle benötigten Dateien noch mal unter WinNT compilieren und schauen ob das Abhilfe schaft.

Wenn irgend jemand noch weitere Ideen hat wäre ich mehr als dankbar!

MfG
A. Gehrke

Andy_30

Andy_30
  • Members
  • 6 posts

Posted 06 January 2003 - 18:06

Hi noch mal,

das Problem hat sich erledigt. Es lag an einer Inkompatibilität. Wo genau diese bestand kann ich leider nicht sagen.
Als Workaround haben wir die DLL einfach statisch gelinkt (was sie eigentlich von Anfang an sein sollte, aber irgendwie war niemandem aufgefallen das die DLL nur 48KB groß war und somit unmöglich statisch gelinkt sein konnte).

Nun lässt sie sich laden und alles funzt einwandfrei :o))

Vielen Dank noch mal und ciao
Andreas