Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » R6034

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
26.11.2009, 09:57 Uhr
mael15



hallo,

bei der einbindung einer dll bekomme ich beim starten des hauptprogramms einen r6034. ich habe schon viel hier im forum und in netz dazu gefunden, aber leider hilft nichts.

ich binde zwei selbst erstellt dlls ein, eine funktioniert problemlos. ich habe im visual studio alle einstellungen auf die zweite dll kopiert, besonders in linker->manifestdatei und manifesttool, jedoch ohne erfolg.

wenn ich die nicht funktionierende dll in visual studio aufmache, sehe ich, dass ein manifest vorhanden ist.
warum dann die fehlermeldung?

vielen dank für eure mühe!

Dieser Post wurde am 26.11.2009 um 10:38 Uhr von mael15 editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
26.11.2009, 10:37 Uhr
mael15



eventuell ist das eine nützliche information:
ich habe mit dependency walker in beiden varianten ein profiling gestartet, einmal nicht funktionierendes programm mit dll und einmal funktionierend mit dll dateien direkt im programm einkompiliert. dann habe ich alle fehlermeldungen kopiert und die unterschiede rausgefiltert. leider ist das für mich immernoch nicht zu durchschauen.


Vergleichen von (<) ok.txt (6438 Byte)
mit (>) failed.txt (5753 Byte)

24,32c24,34
< GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsAlloc") called from "MSVCR90D.DLL" at address 0x00AFE359 and returned NULL by thread 1. Error: Die angegebene Prozedur wurde nicht gefunden (127).
< GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsGetValue") called from "MSVCR90D.DLL" at address 0x00AFE36D and returned NULL by thread 1. Error: Die angegebene Prozedur wurde nicht gefunden (127).
< GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsSetValue") called from "MSVCR90D.DLL" at address 0x00AFE381 and returned NULL by thread 1. Error: Die angegebene Prozedur wurde nicht gefunden (127).
< GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsFree") called from "MSVCR90D.DLL" at address 0x00AFE395 and returned NULL by thread 1. Error: Die angegebene Prozedur wurde nicht gefunden (127).
<
< GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsAlloc") called from "MEPOHNEDLL4.EXE" at address 0x0088B5E9 and returned NULL by thread 1. Error: Die angegebene Prozedur wurde nicht gefunden (127).
< GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsGetValue") called from "MEPOHNEDLL4.EXE" at address 0x0088B5FD and returned NULL by thread 1. Error: Die angegebene Prozedur wurde nicht gefunden (127).
< GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsSetValue") called from "MEPOHNEDLL4.EXE" at address 0x0088B611 and returned NULL by thread 1. Error: Die angegebene Prozedur wurde nicht gefunden (127).
< GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsFree") called from "MEPOHNEDLL4.EXE" at address 0x0088B625 and returned NULL by thread 1. Error: Die angegebene Prozedur wurde nicht gefunden (127).
---
> GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsAlloc") called from "MSVCR90D.DLL" at address 0x00ADE359 and returned NULL by thread 1. Error: Die angegebene Prozedur wurde nicht gefunden (127).
> GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsGetValue") called from "MSVCR90D.DLL" at address 0x00ADE36D and returned NULL by thread 1. Error: Die angegebene Prozedur wurde nicht gefunden (127).
> GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsSetValue") called from "MSVCR90D.DLL" at address 0x00ADE381 and returned NULL by thread 1. Error: Die angegebene Prozedur wurde nicht gefunden (127).
> GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsFree") called from "MSVCR90D.DLL" at address 0x00ADE395 and returned NULL by thread 1. Error: Die angegebene Prozedur wurde nicht gefunden (127).
>
> GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsAlloc") called from "MSVCR80D.DLL" at address 0x010B4A65 and returned NULL by thread 1. Error: Die angegebene Prozedur wurde nicht gefunden (127).
> GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsGetValue") called from "MSVCR80D.DLL" at address 0x010B4A79 and returned NULL by thread 1. Error: Die angegebene Prozedur wurde nicht gefunden (127).
> GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsSetValue") called from "MSVCR80D.DLL" at address 0x010B4A8D and returned NULL by thread 1. Error: Die angegebene Prozedur wurde nicht gefunden (127).
> GetProcAddress(0x7C800000 [KERNEL32.DLL], "FlsFree") called from "MSVCR80D.DLL" at address 0x010B4AA1 and returned NULL by thread 1. Error: Die angegebene Prozedur wurde nicht gefunden (127).
>
> GetProcAddress(0x77BE0000 [MSVCRT.DLL], "_get_terminate") called from "MSVCR80D.DLL" at address 0x010B7863 and returned NULL by thread 1. Error: Die angegebene Prozedur wurde nicht gefunden (127).

36,45c38,40
< GetProcAddress(0x1CC00000 [MXSOUT.DLL], "mxsOpenStorage2") called from "MXS.DLL" at address 0x1CDE1DD0 and returned NULL by thread 1. Error: Die angegebene Prozedur wurde nicht gefunden (127).
< GetProcAddress(0x1CC00000 [MXSOUT.DLL], "mxsCreateStorage2") called from "MXS.DLL" at address 0x1CDE1DD0 and returned NULL by thread 1. Error: Die angegebene Prozedur wurde nicht gefunden (127).
<
< LoadLibraryExW("mxsout_logger.dll", 0x00000000, LOAD_WITH_ALTERED_SEARCH_PATH) returned NULL by thread 1. Error: Das angegebene Modul wurde nicht gefunden (126).
<
< LoadLibraryExW("mxsout_profiler.dll", 0x00000000, LOAD_WITH_ALTERED_SEARCH_PATH) returned NULL by thread 1. Error: Das angegebene Modul wurde nicht gefunden (126).
<
< GetProcAddress(0x64650000 [NISMSLU.DLL], "select") called from "NIRPC.DLL" at address 0x646012F0 and returned NULL by thread 1. Error: Die angegebene Prozedur wurde nicht gefunden (127).
<
< LoadLibraryExW("mxsout_profiler", 0x00000000, LOAD_WITH_ALTERED_SEARCH_PATH) returned NULL by thread 1. Error: Das angegebene Modul wurde nicht gefunden (126).
---
> DllMain(0x010B0000, DLL_PROCESS_ATTACH, 0x0012FD30) in "MSVCR80D.DLL" returned 0 (0x0) by thread 1.
>
> Second chance exception 0xC0000005 (Access Violation) occurred at address 0x00000000 by thread 2.


kann jemand damit etwas anfangen?

Dieser Post wurde am 26.11.2009 um 10:38 Uhr von mael15 editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
26.11.2009, 10:46 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


Hi,

was mir auf anhieb auffällt:

msvcr80.dll und msvcr90.dll sind einmal vs2005 und einmal vs2008-runtimes, evtl linkst du eine dll mit vs2005 im debugmodus erstellte dll zu einer mit vs2008 erstellten? das könnte u.u probleme geben.

Was sagt der fehler denn eigentlich genau? also fehlerbeschreibung von der nummer? weil die nummer sagt mir so nix, und zum nachschaun bin ich grade zu faul :P
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
26.11.2009, 12:07 Uhr
mael15



hallo,

danke für deine antwort!
das programm läuft ja, wenn ich die eine besagte dll nicht einbinde. sowohl diese dll als auch das programm erstelle ich mit vs 2008 prof. das dürfte also wahrscheinlich nicht das problem sein.

die fehler genau lauten:
Debug Error!
Programm: ...
R6034
An application has made an ttempt to load the C runtime without using a manifest. This is an unsupported way to load visual C++ dlls. you need to modify your application to build with a manifest. for more information, see the "visual c++ libraries as shared side-by-side assemblies" topic in the product documentation.
(press retry to debug the application)

wenn ich dann "retry" klicke kommen gleichzeitig:
mepOhneDll4.exe - fehler in der anwendung: die anwendung konnte nicht richtig initialisiert werden (0xc0000142).

und

Unbehandelte Ausnahme bei 0x00000000 in mepOhneDll4.exe: 0xC0000005: Zugriffsverletzung beim Lesen an Position 0x00000000.


ich habe sowohl die application mit einem eingebetteten manifest erstellt, als auch in der genannten produktdokumentation (http://msdn.microsoft.com/de-de/library/ms235624%28VS.80%29.aspx) nachgesehen.

Dieser Post wurde am 26.11.2009 um 12:10 Uhr von mael15 editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
26.11.2009, 15:54 Uhr
mael15



ok, ich habe das problem noch weiter eingekreist:
der fehler tritt nur dann auf, wenn die eine dll auf die andere verweist. jede dll einzeln kann ich im programm einbinden.

ich habe ein beliebiges wxWidgets samples (grid) genommen und ein objekt aus einer dll instantiiert. das funktionierte mit beides dlls. der fehler trat erst dann auf, wenn die eine dll ihrerseits ein objekt der anderen instantiiert.
hmmmmmmmmmm..............


update:
es scheint ein wxWidgets problem zu sein, ist hier also das falsche forum. das einbinden einer dll, die ihrerseits eine dll einbindet, ist ohne wxWidgets bei mir kein problem

Dieser Post wurde am 26.11.2009 um 16:51 Uhr von mael15 editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
30.11.2009, 15:22 Uhr
mael15



ok, das problem ist gelöst, obwohl ich nicht wirklich verstehe warum:

eine der beiden dlls linkte in das $(WXWIN)/lib/vc_lib und die andere in das $(WXWIN)/lib/vc_dll verzeichnis.
ebenso $(WXADDITIONS)/lib/vc_lib.

diesen kleinen unterschied habe ich etliche male übersehen :mad:

das problem verschwand, als ich beide in vc_lib linkte. auf der R6034 fehler ist verschwunden, obwohl ich ja nichts an den manifesten geändert habe. ärgerlich verwirrende fehlermeldung...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (WinAPI, Konsole) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: