mfc90d.dll wurde nicht gefunden



  • Ich kenn denn Dependency Walker nicht.
    Ich hab keine Ahnung wie er geht, wie man ihn bedient usw.

    Kein blasser schimmer....

    Gruss



  • simcon schrieb:

    Ich kenn denn Dependency Walker nicht.
    Ich hab keine Ahnung wie er geht, wie man ihn bedient usw.

    Kein blasser schimmer....

    Gruss

    Und was hält dich davon ab den runterzuladen und auszutesten?
    (Mein geposteter Link war falsch, ist jetzt korrigiert. Nichts desto trotz, gibt auch google darüber auskunft.)



  • Hab ich doch schon gemacht.
    Läuft doch schon...
    Aber ich weiss nicht, wie mann ihn bedient.



  • Also der dependency Walker zeigt folgendes:

    CRHEAPALLOC.DLL Error opening file.Das System kann die angegeben Datei nicht finden
    MSVCP90D.DLL Error opening file.Das System kann die angegeben Datei nicht finden
    


  • Da sollte die Release Version der C++ 2008 Runtime liegen, eben die msvcp90.dll:

    C:\WINDOWS\WinSxS\x86_Microsoft.VC90.CRT_1fc8b3b9a1e18e3b_9.0.21022.8_x-ww_d08d0375

    Da sollte die Debug Version der C++ 2008 Runtime liegen, eben die msvcp90d.dll:

    C:\WINDOWS\WinSxS\x86_Microsoft.VC90.DebugCRT_1fc8b3b9a1e18e3b_9.0.21022.8_x-ww_597c3456

    Überprüfe mal bei Dir, was sich alles für Verzeichnisse und Files im C:\WINDOWS\WinSxS Ordner befinden.

    Simon


  • Mod

    Zum Dependency Walker: Einfach starten und seine EXE angeben.

    Gibt es Einträge im Eventlog. Die DLLs der CRT und der MFC werden übr Manifeste geladen. Die Dateien werden also nicht im System32 oder im Programmverzeichnis gesucht, sondern unter dem entsprechenden Public Key Eintrag im SxS (Side by Side) Verzeichnis.



  • Die Verzeichnisse heissen ein weing anderst.
    statt

    _x-ww_d08d0375
    

    steht

    x86_microsoft.vc90.debugcrt_1fc8b3b9a1e18e3b_9.0.30428.1_none_b56b0389391a36c9
    

    aber die msvcp90.dll ist drin


  • Mod

    Und was steht in dem Manifest Deiner EXE welche DLL erwartet wird?



  • Wo sehe ich denn das?
    Was genau ist ein Manifest?



  • simcon schrieb:

    Die Verzeichnisse heissen ein weing anderst.
    statt

    _x-ww_d08d0375
    

    steht

    x86_microsoft.vc90.debugcrt_1fc8b3b9a1e18e3b_9.0.30428.1_none_b56b0389391a36c9
    

    aber die msvcp90.dll ist drin

    Da müsste aber wenn schon die msvcp90d.dll drin sein.

    Hast Du das neuste SP schon installiert oder noch eine Beta Version des VS2008?
    Simon



  • Die erwähnte Version (9.0.30428.1) der C++ Runtime scheint die Visual Studio 2008 Version 9.0.30428.1 SP1 Beta1 zu sein. Ich rätsle jedoch auf was sich das Beta1 bezieht... aufs SP oder auf VS?



  • Also Service Pack lade ich gerade runter.
    Installiere es dann mal....



  • Ich würde zuerst analysieren.
    Was hast Du genau für eine Version des VS (inkl. SP) drauf.
    Was ist Beta, VS od. SP?


  • Mod

    simcon schrieb:

    Wo sehe ich denn das?
    Was genau ist ein Manifest?

    Schau mal in Dein Verzeichnis mit den Objektdateien. Dort findest Du Mnaifest Dateien (auch temporäere), die eingebunden werden. Dort steht was später in die EXE einfießt und was der Lader sucht.


  • Mod

    simon.gysi schrieb:

    Was ist Beta, VS od. SP?

    Das ist die Beta des SP1 für VS-2008!
    Erkennbar an der Build Nummer.



  • Die genaue Version ist:
    Version 9.0.21022.8 RTM
    Kein SP



  • Im Objektverzeichnis Deiner Anwendung müsste sich die Datei "Programmname.exe.intermediate.manifest" befinden. Was steht in dieser drin?



  • Das ist vom Release

    <?xml version='1.0' encoding='UTF-8' standalone='yes'?>
    <assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
      <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
        <security>
          <requestedPrivileges>
            <requestedExecutionLevel level='asInvoker' uiAccess='false' />
          </requestedPrivileges>
        </security>
      </trustInfo>
      <dependency>
        <dependentAssembly>
          <assemblyIdentity type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' />
        </dependentAssembly>
      </dependency>
      <dependency>
        <dependentAssembly>
          <assemblyIdentity type='win32' name='Microsoft.VC90.MFC' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' />
        </dependentAssembly>
      </dependency>
      <dependency>
        <dependentAssembly>
          <assemblyIdentity type='win32' name='Microsoft.VC90.DebugCRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' />
        </dependentAssembly>
      </dependency>
    </assembly>
    


  • Und wie schaut die vom Debug-Verzeichnis aus?



  • Da ist keine drin..... 😞


Anmelden zum Antworten