Re: Runtime error R6034



Hallo Robert!

Direkt im Stammverzeichnis des Projektes, unter ..dll_fehler\dll_fehler\
Die Ordnung mach ich immer so. Extra einen Ordner mit den includes und
einer mit den libs.

Upps Sorry. Habe es nicht korrekt angesehen.

Zum Problem:
Derjenige der, die HIGHGUI100.DLL gebaut hat, der hat es irgendwie geschafft die Debug CRT und die Release CRT zu mischen.
Das Manifest dieser DLL lädt aber nur die Debug-CRT!

Wenn man dieses Projekt im Depepends ansieht, dann kann man klar die Abhängigkeit von der MSVCR80.DLL *_und_* der MSVCR80D.DLL erkennen.
Die Debug CRT wird per Manifest geladen. Die Release DLL nicht. Es wundert also nicht, dass das Projekt nicht starten kann.

Ich bekomme übrigends keinen R6045 sondern klar die Meldung:
Die Anwendung konnte nicht gestartet werden, weil MSVCR80.dll nicht gefunden wurde.
Und das stimmt!

Wenn man nun die MSVC80.DLL in das Anwendungsverzeichnis kopiert, dann kommt folgerichtig der R6045. Weil diese DLL nicht über ein Manifest geladen wurde. Koexistieren könnten die DLL's schon miteinander, aber das Chaos welcher Speicherblock durch welches new erzeugt wurde mit mit welchem delete freigegeben werden darf möchte ich nicht hüten.

--
Martin Richter [MVP] WWJD http://blog.m-ri.de
"A well-written program is its own heaven; a poorly written
program is its own hell!" The Tao of Programming
FAQ: http://www.mpdvc.de Samples: http://www.codeproject.com
.



Relevant Pages

  • Re: ERROR_DLL_INIT_FAILED - HELP please
    ... manifest resolves the issue. ... copy of the CRT with each DLL. ... __declspecvoid MOD; ...
    (microsoft.public.vc.language)
  • Re: Manifest+MFC80.dll = neue DLL-Hölle?
    ... Meiner Meinung nach beseitigt gerade das Manifest das DLL Problem. ... dann startet die App nicht. ... dass die CRT aei der 8.0 verwendet. ...
    (microsoft.public.de.vc)
  • Re: LoadLibrary and AfxLoadLibrary
    ... manifest without publicKeyToken or make it a proper resource only DLL so it doesn't think it needs the CRT. ...
    (microsoft.public.vc.mfc)
  • Re: Manifest Hell - a thing of the past?
    ... just put the MFC and CRT DLLs in my program directory since the first MFC version of my program released in 1996. ... And I have never caused DLL Hell for anyone else by replacing someone's versions of MFC etc with the ones I am supplying. ... Putting the DLL's in your program directory is called App local installation. ... One reason MS pushed so hard for the manifest system is it let them issue patched DLL's that could override even the ones you had in your program directory. ...
    (microsoft.public.vc.mfc)
  • Re: Manifests and VC8
    ... assembly unless it has a corresponding manifest and follows naming rules. ... activate proper context for this Dll. ... The instruction on these MSDN pages apply to SxS assemblies. ... >> As for why linker does not embedd manifest, ...
    (microsoft.public.dotnet.languages.vc)