Запуск DLL с использованием rundll32.exe.. не выводится или ошибка не видела
Я запускаю DLL, используя rundll32.exe, но я не вижу вывод, как ожидалось, ни мои операторы журнала, ни я не вижу каких-либо ошибок.
Как мне отладить это?
Спасибо,
КГ
1 ответ
Решение
В Windows есть программы двух видов: консольные и оконные. Для консольных программ система выделяет и подключает их консоль во время запуска процесса.
Для программ Windows этого не происходит, поэтому stdout, stderr и т. Д. Уходят в никуда. Программу Windows еще можно выделить (AllocConsole()
) и прикрепить (AttachConsole()
) (не более одной) консоли явно в их коде. Так что вы можете попытаться сделать это в отладочной сборке. Вы не должны делать это в сборке выпуска (производственной), потому что DLL обычно не должны этого делать.
Похоже rundll32.exe
это приложение для Windows.