Announcement

Collapse
No announcement yet.

Fehler bei COM-Server Registrierung mit regsvr32.exe

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Fehler bei COM-Server Registrierung mit regsvr32.exe

    Ich habe folgendes Problem :
    Bei dem Versuch einen COM-Server unter Win95 mit regsvr32.exe zu registrieren bekomme ich die folgende Fehlermeldung :

    LoadLibrary ("myserver.dll") failed.
    GetLastError returns 0x00000485.

    Kann mir jemand sagen, was zu tun ist ?
    Unter Win98, W2in2000 und WinNT funktioniert alles.
    Danke

  • #2
    Hallo,

    stimmt die GetLastError-Fehlernummer? In der Platform-SDK-Hilfe taucht diese Nummer nicht in der Tabelle <i>Win32 Error Codes</i> auf.

    Das sieht so aus, als ob die DLL intern eine Ressource (DLL, TLB etc.) einbindet, die unter Windows 95 nicht vorhanden ist. Welche Abhängigkeiten tauchen in der Typbibliothek von MyServer.dll auf

    Comment


    • #3
      Hallo,

      die Fehlernummer ist korrekt.

      leider kann ich zu den Abhängigkeiten nichts sagen, da es sich in diesem Fall um eine DLL von IBM handelt

      Comment


      • #4
        Hallo,

        auch die IBM-DLL kann mit Delphi geöffnet werden (siehe <i>Datei | Datei öffnen... | Datentyp Typbibliothek</i>), um die Typbibliothek zu untersuchen. Die Abhängigkeiten zeigt der Typbibliotheks-Editor auf der Registerseite <i>Verwendet</i> an. Sonstige Nicht-COM-Abhängigkeiten können mit dem Delphi-Tool <i>tdump.exe</i> untersucht werden

        Comment


        • #5
          Hallo,

          also unter verwendet steht
          1. Borland standard VCL
          2. OLE Automation

          Heute morgen habe ich die Installationsroutine der IBM erhalten und getestet. Alles funktioniert, jedoch bin ich damit noch nicht ganz zufrieden. Bei der Installation wurden die Dateien

          1. MFC40.DLL und
          2 MSVCRT40.DLL
          von der Installationsroutine nachinstalliert.

          Nach der IBM-Installation funktioniert auch alles,
          nur lässt sich die betreffende DLL trotzdem nicht mit regsvr32
          registrieren.

          Der Hintergrund für diese Aktionen ist, daß ich die Installation des COM-Servers in eine andere Installation integrieren möchte, sodaß der Kunde nicht mehrere Installationen durchführen muss.

          Wozu dienen denn die o.g. DLL's ?
          Genügt es dann, wenn ich in meiner Installation die Registryeinträge für den COM-Server vornehme ?
          Gibt es eigentlich ein Tool, welches die Installation protokollieren kann und mir ein Installationsscript erstellt ?

          Vielen Dan

          Comment


          • #6
            Hallo,

            zur Frage 1: <br>
            Hinter <i>MFC40.DLL</i> verbirgt sich die Runtime-DLL der <i>Microsoft Foundation Class</i> (MFC). Die DLL wurde mit Microsoft Visual Studio compiliert und bindet daher die MFC-Version 4 ein. Hinter <i>MSVCRT40.DLL</i> verbirgt sich die Runtime-DLL von Microsoft Visual C++ 4.

            zur Frage 2: <br>
            Wenn alle Registry-Schlüssel "erwischt" werden und wenn sichergestellt ist, dass die Objekte auch tatsächlich auf diesem System laufen, würde ein direkter Registry-Zugriff ausreichen (solange keine COM+ Objekte betroffen sind).

            zur Frage 3: <br>
            Ja - auf der MSDN-CDROM von <i>Windows 2000 Advanced Server</i> (auf den anderen Scheiben habe ich noch nicht danach gesucht) ist ein Tool (<i>Veritas Discover</i>), das "fremde" Setups mitprotokolliert und daraus ein MSI-Installationsscript macht (<i>Microsoft Installer</i>). Zur Weitergabe benötigt man dann nur die einzelnen Dateien und die MSI-Datei (wird von der ebenfalls auf der CDROM zu findenen <i>Veritas Software Console</i> generiert), die vom Anwender mit Doppelklick gestartet wird

            Comment

            Working...
            X