|
|
|
ERROR_DLL_INIT_FAILED - караул !
|
|||
|---|---|---|---|
|
#18+
Вполне возможно что это что-нибудь простое, но... VS2005 32-bit mode, C/C++ Куча DLL (около 2500) скомпилированы по-простому с командной строки: cl /LDd progname.c main собирается в VS2005 - compile: /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /Gm /EHsc /RTC1 /MTd /Fo"Debug\\" /Fd"Debug\vc80.pdb" /W3 /nologo /c /Wp64 /Zi /TP /errorReport:prompt link /OUT:"Debug/app.exe" /INCREMENTAL /NOLOGO /MANIFEST /MANIFESTFILE:"Debug\app.exe.intermediate.manifest" /DEBUG /PDB:"Debug/app.pdb" /SUBSYSTEM:CONSOLE /MACHINE:X86 /ERRORREPORT:PROMPT wsock32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib После загрузки 121 DLL, LoadLibrary начинает давать ошибку 1114. Размер app.exe в мозгах в этот момент около 64M Свободных ресурсов на тачке до хрена (WinXP x64 2G RAM ) Такой же результат и на 2003 32-bit сервере. ГДЕ ограничения ? virtual mapping ??? зарезервированный стек в каждой DLL ??? Какая-нибудь админ/секьюрити засада в 2003 (XP x64 это тоже 2003) ??? Подкиньте хоть какую-нибудь идею С Уважением, Сергей ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2006, 05:58 |
|
||
|
ERROR_DLL_INIT_FAILED - караул !
|
|||
|---|---|---|---|
|
#18+
TESTCASE: mod.c: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. main.c Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. compile.cmd Код: plaintext 1. 2. 3. 4. compile main: Код: plaintext 1. only 126 DLLs will be loaded :-((((( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2006, 21:23 |
|
||
|
ERROR_DLL_INIT_FAILED - караул !
|
|||
|---|---|---|---|
|
#18+
Просто как FYI Проблема (была) в том что при ключе /LD без /MD модуль CRT линковался статически в каждую DLL и это приводило к переполнению TLS (как правильно сказал Carl Daniel: "IIRC, every copy of the CRT will consume a single TLS entry"). Правильный вариант для VS2005 делать cl /LD /MD xx.cpp ... а потом встраивать манифест mt /mainfest xx.dll.manifest /outputresource:xx.dll;#2 иначе нормально в VS2005 не выживешь. вот ! -- СК ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2006, 09:48 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=347&tid=2030990]: |
0ms |
get settings: |
6ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
40ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 207ms |
| total: | 318ms |

| 0 / 0 |
