Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Cyianor Super JLI'ler
Anmeldedatum: 23.12.2002 Beiträge: 452
Medaillen: Keine
|
Verfasst am: 10.11.2003, 14:21 Titel: STL in DLLs |
|
|
Hi,
wenn ich die STL in DLLs verwenden will dann erhalte ich immer eine Fehlermeldung, wenn ich das Programm starte, das die DLL verwendet. Geht das irgendwie, oder muss ich auf die STL verzichten ?? |
|
Nach oben |
|
|
Cyianor Super JLI'ler
Anmeldedatum: 23.12.2002 Beiträge: 452
Medaillen: Keine
|
Verfasst am: 10.11.2003, 18:35 Titel: |
|
|
Oder Kann mir jemand eine gute Alternative zu maps zeigen?? |
|
Nach oben |
|
|
Christian Rousselle Site Admin
Alter: 48 Anmeldedatum: 19.07.2002 Beiträge: 1630
Medaillen: Keine
|
Verfasst am: 10.11.2003, 19:14 Titel: |
|
|
Ich weiss jetzt nicht, was das für Probleme in einer DLL geben sollte?!? |
|
Nach oben |
|
|
Cyianor Super JLI'ler
Anmeldedatum: 23.12.2002 Beiträge: 452
Medaillen: Keine
|
Verfasst am: 11.11.2003, 12:37 Titel: |
|
|
Wenn ich die DLL compiliere, dann erscheint eine Warnung das ich irgendeine Clientschnittstelle brauche. Wenn ich die DLL dann in einem Projekt verwende stürzt das Programm ab. |
|
Nach oben |
|
|
Fallen JLI MVP
Alter: 40 Anmeldedatum: 08.03.2003 Beiträge: 2860 Wohnort: Münster Medaillen: 1 (mehr...)
|
Verfasst am: 12.11.2003, 12:02 Titel: |
|
|
Hast du vergessen den DLL Einstiegspunkt genau zu definieren ? _________________ "I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse." |
|
Nach oben |
|
|
Cyianor Super JLI'ler
Anmeldedatum: 23.12.2002 Beiträge: 452
Medaillen: Keine
|
Verfasst am: 12.11.2003, 12:50 Titel: |
|
|
Wie, Einstiegspunkt??? Ich hab da eine DLLMain.
Code: | BOOL APIENTRY DllMain(HMODULE hModule,
DWORD dwReasonForCall,
LPVOID pvReserved)
{
j_g_DLLHandle = hModule;
switch(dwReasonForCall)
{
case DLL_PROCESS_DETACH:
if(j_g_bInitCalled && !j_g_bExitCalled)
{
jExit();
}
break;
}
return TRUE;
} |
|
|
Nach oben |
|
|
Fallen JLI MVP
Alter: 40 Anmeldedatum: 08.03.2003 Beiträge: 2860 Wohnort: Münster Medaillen: 1 (mehr...)
|
Verfasst am: 13.11.2003, 08:32 Titel: |
|
|
Ok, einen Einstiegspunkt hast du. Dein Fehler könnte daran liegen das du irgendwo iin deiner DLL einen Fehler hast (kein Syntaktischen) die sollen bei DLLs und API-Hooks besonders dramatisch sein und im schlimmsten Fall deinen Rechner zum abstürzen bringen. Vieleicht irgendwelche Speicherprobleme. _________________ "I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse." |
|
Nach oben |
|
|
Cyianor Super JLI'ler
Anmeldedatum: 23.12.2002 Beiträge: 452
Medaillen: Keine
|
Verfasst am: 14.11.2003, 13:09 Titel: |
|
|
Es muss an der STL liegen. Wenn ich nämlich STL-Elemente weglasse funktioniert es ja.
Hier ist übrigens die Fehlermeldung die ich bekomme.
Code: | d:\jeep\jtexmanager.h(12) : warning C4251: 'Textures' : class 'std::map<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,struct IDirect3DTexture9 *,struct std::less<class std::basic_string<char,struct std::char
_traits<char>,class std::allocator<char> > >,class std::allocator<struct IDirect3DTexture9 *> >' benoetigt eine DLL-Schnittstelle, die von Clients von class 'jTexMan' verwendet wird |
|
|
Nach oben |
|
|
Fallen JLI MVP
Alter: 40 Anmeldedatum: 08.03.2003 Beiträge: 2860 Wohnort: Münster Medaillen: 1 (mehr...)
|
Verfasst am: 15.11.2003, 17:05 Titel: |
|
|
Kann es sein das in deiner Dll Datein verwendet werden die in deinem Programm nicht includiert werden ? _________________ "I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse." |
|
Nach oben |
|
|
Cyianor Super JLI'ler
Anmeldedatum: 23.12.2002 Beiträge: 452
Medaillen: Keine
|
Verfasst am: 16.11.2003, 15:11 Titel: |
|
|
Die Warnung kommt ja wenn ich die DLL kompiliere, nicht wenn ich das Programm kompiliere. Wenn ich das Programm mit dieser DLL laufen lasse, dann stürzt es ab. |
|
Nach oben |
|
|
Cyianor Super JLI'ler
Anmeldedatum: 23.12.2002 Beiträge: 452
Medaillen: Keine
|
Verfasst am: 18.11.2003, 18:44 Titel: |
|
|
Könnte es daran liegen das ich die map als static deklariere?? |
|
Nach oben |
|
|
Fallen JLI MVP
Alter: 40 Anmeldedatum: 08.03.2003 Beiträge: 2860 Wohnort: Münster Medaillen: 1 (mehr...)
|
Verfasst am: 19.11.2003, 12:41 Titel: |
|
|
Probier es einfach mal
static Dinge sind mir auch immer suspect. _________________ "I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse." |
|
Nach oben |
|
|
Chewie Super JLI'ler
Anmeldedatum: 17.07.2003 Beiträge: 382
Medaillen: Keine
|
Verfasst am: 21.11.2003, 21:44 Titel: |
|
|
Ich hab dasselbe Problem
Selbe Fehlermeldung, will auch ne statische map in einer dll verwenden. Hast du schon was rausgefunden? Ich hab auch versucht, es in ner 'normalen' Klasse als member zu definieren, bringt aber dieselbe Fehlermeldung... |
|
Nach oben |
|
|
Fallen JLI MVP
Alter: 40 Anmeldedatum: 08.03.2003 Beiträge: 2860 Wohnort: Münster Medaillen: 1 (mehr...)
|
Verfasst am: 21.11.2003, 21:47 Titel: |
|
|
Kann das daran liegen das map, vector,... templates sind. Die Templates werden ja erst beim kompilieren ins richtige/benötigte Format gebracht. _________________ "I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse." |
|
Nach oben |
|
|
Chewie Super JLI'ler
Anmeldedatum: 17.07.2003 Beiträge: 382
Medaillen: Keine
|
Verfasst am: 21.11.2003, 22:28 Titel: |
|
|
hab jetzt in nem anderen Forum und in der msdn(nicht in Bezug auf std) gelesen, dass man die warnung getrost abschalten kann...bei mir führt es auch zu keinem Absturz...Glück gehabt |
|
Nach oben |
|
|
|