![]() |
eXeL@B —› Программирование —› OutputDebugStringA в Windows Vista |
Посл.ответ | Сообщение |
|
Создано: 03 марта 2009 20:49 · Личное сообщение · #1 |
|
Создано: 03 марта 2009 21:42 · Поправил: coderess · Личное сообщение · #2 Висты у меня нет, но возможно что она(эта функция) отключена, судя по тому что отладчик WinDBG не может получить её вывод. Создается ключ в HKLM\SYSTEM\CCS\Control\Session Manager\Debug Print Filter Enable output of DbgPrint/KdPrint messages by default --Open the key "HKLM\SYSTEM\CCS\Control\Session Manager\Debug Print Filter". Under this key, create a value with the name "DEFAULT" Set the value of this key equal to the DWORD value 8 to enable xxx_INFO_LEVEL output as well as xxx_ERROR_LEVEL output. Or try setting the mask to 0xF so you get all output. You must reboot for these changes to take effect. http://www.osronline.com/article.cfm?article=295 http://www.osronline.com/article.cfm?article=295 ----- Gutta cavat lapidem. Feci, quod potui. Faciant meliora potentes ![]() |
|
Создано: 03 марта 2009 23:00 · Личное сообщение · #3 OutputDebugString. Эта малоизвестная функция имеет довольно простое назначение - она принимает строковый параметр и выводит его в программу. Функция kernel32@OutputDebugString() имеет различное поведение, в зависимости от того, присутствует отладчик или нет. Самое заметное различие в поведении то, что вызываемая сразу kernel32@GetLastError() возвратит ноль, если отладчик будет присутствовать.-из 1 дока по антидебагу, тут его выкладывали. Ещё для ольки непатченой сплоит это, если в параметрах много %s. Гугли, короче, будет тебе счастье. ![]() |
![]() |
eXeL@B —› Программирование —› OutputDebugStringA в Windows Vista |
Эта тема закрыта. Ответы больше не принимаются. |