Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > программа компилируется но не запускается


Автор: Andrej23 6.12.2011, 08:49
Доброго ыремени суток.

Появилась такая проблемка (прикрепленную выше тему читал, пока не помогло).

написал программку, использующую стороннюю длл. на основном компьютере запускается,
на другом компьютере компилируется, но при запуске говорит вот так:

Код

'ttt.exe': Loaded 'C:\work\cpp\ttt\ttt\debug\ttt.exe', Symbols loaded.
'ttt.exe': Loaded 'E:\WINDOWS\system32\ntdll.dll', No symbols loaded.
'ttt.exe': Loaded 'E:\WINDOWS\system32\kernel32.dll', No symbols loaded.
'ttt.exe': Loaded 'E:\WINDOWS\system32\user32.dll', No symbols loaded.
'ttt.exe': Loaded 'E:\WINDOWS\system32\gdi32.dll', No symbols loaded.
'ttt.exe': Loaded 'E:\WINDOWS\system32\winmm.dll', No symbols loaded.
'ttt.exe': Loaded 'E:\WINDOWS\system32\advapi32.dll', No symbols loaded.
'ttt.exe': Loaded 'E:\WINDOWS\system32\rpcrt4.dll', No symbols loaded.
'ttt.exe': Loaded 'E:\WINDOWS\system32\secur32.dll', No symbols loaded.
'ttt.exe': Loaded 'C:\work\cpp\ttt\ttt\debug\ASKUlib14.dll', Binary was not built with debug information.
'ttt.exe': Loaded 'E:\WINDOWS\system32\setupapi.dll', No symbols loaded.
'ttt.exe': Loaded 'E:\WINDOWS\system32\msvcrt.dll', No symbols loaded.
'ttt.exe': Loaded 'E:\WINDOWS\WinSxS\x86_Microsoft.VC80.DebugCRT_1fc8b3b9a1e18e3b_8.0.50727.42_x-ww_f75eb16c\msvcp80d.dll', Symbols loaded.
'ttt.exe': Loaded 'E:\WINDOWS\WinSxS\x86_Microsoft.VC80.DebugCRT_1fc8b3b9a1e18e3b_8.0.50727.42_x-ww_f75eb16c\msvcr80d.dll', Symbols loaded.
'ttt.exe': Loaded 'E:\WINDOWS\system32\imm32.dll', No symbols loaded.
'ttt.exe': Loaded 'E:\Program Files\Agnitum\Outpost Firewall Pro\wl_hook.dll', No symbols loaded.
'ttt.exe': Loaded 'E:\WINDOWS\system32\shell32.dll', No symbols loaded.
'ttt.exe': Loaded 'E:\WINDOWS\system32\shlwapi.dll', No symbols loaded.
First-chance exception at 0x7c91ac4a in ttt.exe: 0xC0000005: Access violation writing location 0x00000010.
'ttt.exe': Unloaded 'E:\Program Files\Agnitum\Outpost Firewall Pro\wl_hook.dll'
'ttt.exe': Unloaded 'E:\WINDOWS\system32\shell32.dll'
'ttt.exe': Unloaded 'E:\WINDOWS\system32\shlwapi.dll'
'ttt.exe': Loaded 'E:\Program Files\Kaspersky Lab\Kaspersky Internet Security 2010\mzvkbd3.dll', No symbols loaded.
'ttt.exe': Loaded 'E:\Program Files\Kaspersky Lab\Kaspersky Internet Security 2010\kloehk.dll', No symbols loaded.
The thread 'Win32 Thread' (0x4dc) has exited with code 1 (0x1).
The thread 'Win32 Thread' (0xcc8) has exited with code 1 (0x1).
The program '[2704] ttt.exe: Native' has exited with code 1 (0x1).


сторонняя библиотека ASKUlib14.dll  добавил либ файл в папку и в проект и длл в папку debug
еще использовал winMM но его добавил как либ в папку с исходниками

подскажите плз в чем может быть дело?

Автор: Andrej23 6.12.2011, 09:46
Нашел такую вот штуковину:

No symbols are loaded for any call stack frame. The source code cannot be displayed.
Это ругается ntdll.dll

Что это может значить?

Автор: borisbn 6.12.2011, 12:41
Цитата(Andrej23 @  6.12.2011,  08:49 Найти цитируемый пост)
First-chance exception at 0x7c91ac4a in ttt.exe: 0xC0000005: Access violation writing location 0x00000010.

Думаю, проблема в этом. При загрузке какой-то dll-ки происходит Access violation. М.б. ей не хватает какой-то другой dll ...
Для того, чтобы помочь маловато данных. 

Цитата(Andrej23 @  6.12.2011,  09:46 Найти цитируемый пост)
No symbols are loaded for any call stack frame. The source code cannot be displayed.Это ругается ntdll.dll

Это - нормально.

Автор: Andrej23 6.12.2011, 13:41
порылся в dependency walker

он говорит, что ieshims.dll и wer.dll не найдены и почему-то ищет их в дебаг каталоге.

Добавлено через 5 минут и 27 секунд
порылся, похоже проблема не в них. подумал бы про переполнение памяти, но на том компе, где работает памяти даже меньше.

These dependencies were introduced by upgrading to Internet Explorer 8 (new version of MSHTML and IEFRAME).

But as these dependencies are delayloaded it's most likely unrelated to your real issue. It's usually easier to detect 
this kind of package loading errors using the unmanaged debugging mode of Visual Studio on another Visual Studio instance.

Автор: borisbn 6.12.2011, 14:24
запусти из-под студии на том компьютере, на котором запускается, и сравни список загружаемых dll-лек (также, как ты сделал в первом сообщении)

Автор: Andrej23 12.12.2011, 09:51
наконец добрался до компа на котором всё работает.

вот список с него:

Код

'ttt.exe': Loaded 'Z:\cpp_z\ttt\debug\ttt.exe', Symbols loaded.
'ttt.exe': Loaded 'C:\WINDOWS\system32\ntdll.dll', No symbols loaded.
'ttt.exe': Loaded 'C:\WINDOWS\system32\kernel32.dll', No symbols loaded.
'ttt.exe': Loaded 'C:\WINDOWS\system32\user32.dll', No symbols loaded.
'ttt.exe': Loaded 'C:\WINDOWS\system32\gdi32.dll', No symbols loaded.
'ttt.exe': Loaded 'C:\WINDOWS\system32\winmm.dll', No symbols loaded.
'ttt.exe': Loaded 'C:\WINDOWS\system32\advapi32.dll', No symbols loaded.
'ttt.exe': Loaded 'C:\WINDOWS\system32\rpcrt4.dll', No symbols loaded.
'ttt.exe': Loaded 'C:\WINDOWS\system32\secur32.dll', No symbols loaded.
'ttt.exe': Loaded 'Z:\cpp_z\ttt\debug\ASKUlib14.dll', Binary was not built with debug information.
'ttt.exe': Loaded 'C:\WINDOWS\system32\setupapi.dll', No symbols loaded.
'ttt.exe': Loaded 'C:\WINDOWS\system32\msvcrt.dll', No symbols loaded.
'ttt.exe': Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.VC80.DebugCRT_1fc8b3b9a1e18e3b_8.0.50727.42_x-ww_f75eb16c\msvcp80d.dll', Symbols loaded.
'ttt.exe': Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.VC80.DebugCRT_1fc8b3b9a1e18e3b_8.0.50727.42_x-ww_f75eb16c\msvcr80d.dll', Symbols loaded.
'ttt.exe': Loaded 'C:\WINDOWS\system32\imm32.dll', No symbols loaded.
'ttt.exe': Loaded 'C:\Program Files\Kaspersky Lab\Kaspersky Internet Security 2011\kloehk.dll', No symbols loaded.
'ttt.exe': Loaded 'C:\WINDOWS\system32\psapi.dll', No symbols loaded.
'ttt.exe': Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.3053_x-ww_b80fa8ca\msvcr80.dll', No symbols loaded.
'ttt.exe': Unloaded 'C:\Program Files\Kaspersky Lab\Kaspersky Internet Security 2011\kloehk.dll'
'ttt.exe': Unloaded 'C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.3053_x-ww_b80fa8ca\msvcr80.dll'
'ttt.exe': Unloaded 'C:\WINDOWS\system32\psapi.dll'
'ttt.exe': Loaded 'C:\WINDOWS\system32\msctf.dll', No symbols loaded.
'ttt.exe': Loaded 'C:\WINDOWS\system32\version.dll', No symbols loaded.
'ttt.exe': Unloaded 'C:\WINDOWS\system32\version.dll'
'ttt.exe': Loaded 'C:\WINDOWS\system32\msctfime.ime', No symbols loaded.
'ttt.exe': Loaded 'C:\WINDOWS\system32\ole32.dll', No symbols loaded.
'ttt.exe': Loaded 'C:\WINDOWS\system32\wintrust.dll', No symbols loaded.
'ttt.exe': Loaded 'C:\WINDOWS\system32\crypt32.dll', No symbols loaded.
'ttt.exe': Loaded 'C:\WINDOWS\system32\msasn1.dll', No symbols loaded.
'ttt.exe': Loaded 'C:\WINDOWS\system32\imagehlp.dll', No symbols loaded.


Автор: Andrej23 12.12.2011, 10:10
да, там, где не запускается (первый пост) отличия с последним (запускающимся) после строки с Outpost firewall (16 строка)
и в работающем нет никаких shell32.dll, shlwapi.dll

где запускается стоит XP sp2, где не запускается стоит XP sp3 corp. Может дело операционке?

Автор: xvr 12.12.2011, 13:20
Цитата(Andrej23 @  12.12.2011,  10:10 Найти цитируемый пост)
Может дело операционке?

Скорее в Outpost'е - попробуйте отключить (на время)

Автор: Andrej23 12.12.2011, 22:35
не помогает. 
отключал и outpost и касперского.

Автор: xvr 13.12.2011, 12:07
Включите в настройках студии (в дебагере) остановку на First-chance exception и загрузите свою программу. Студия должна показать, где сломалось

Автор: Estranged 13.12.2011, 23:39
WinDbg можно использовать.

Автор: Andrej23 14.12.2011, 21:10
Поздравьте меня, я идиот smile

Всё заработало.

Тупо забыл про защиту, которую сам же и состряпал.  smile)))

Спасибо всем ответившим, 
извиняюсь за потраченное время.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)