![]() |
eXeL@B —› Вопросы новичков —› Vista x64, Кто уже отлаживал проги под ним - поделитесь опытом! |
Посл.ответ | Сообщение |
|
Создано: 16 июля 2007 00:25 · Личное сообщение · #1 Я тут попробовал отладить notepad.exe для сравнения с XP и вообще любопытно поглядеть как работает 64-битная ось. Вот случайно наткнулся на странное: Запускаю notepad.exe в отладку с WinDbg x64, потом смотрю дамп с 0x0 notepad.exe, ну там 4D5A MZ, ляля тополя, вобщем как обычно. Одновременно открыт (тот же) notepad.exe в Hiew 7.41 Но вот прикол, если следить байт за байтом, то начиная с 0x80 они не одинаковые ![]() Моленько покопался, и наткнулся на то, что notepad.exe имеется ещё один (а может и больше) notepad.exe в другой папке с длинным названием \windows\winsx\amd64... что то вроде такого (не ругайте если не правильно, я щас на другом компе и путь точно не помню). Но прикол то в том, что на отладку я биру notepad.exe не в другом пути, а именно в таком-же как и в Hiew'e (\windows\system32\) а на отладку грузится другой из выше указанной папки (я так думаю, потому что сравнив с ним всё сходится). Хотя внутри отладчика пишется что загружен он из (\windows\system32). Я уже потом notepad.exe загрузил в Hiew из другой папки, где amd64 и сравнил с отладчиком - всё сходится! Выходит, что через какой то механизм система грузит файл из другой папки хотя ссылка в Start->Programme->.... указывает на \windows\system32. Понятно что если ось 64-битная, то и notepad.exe наверняка должен быть для 64-бит оси. Но зачем он тогда ещё раз имеется в стандартной папке 32бит (я предполагаю, что тот notepad.exe который лежит в \windows\system32\ 32-битный, и система при загрузке файла меняет его на 64-битный)?. Вобщем странно всё это. Кто знает, разъясните плиз! На том компе у меня немецкая Windows Vista Ultima x64 и свежий WinDbg x64. CPU Athlon 64 3500+ 2.4GHz 2GB Ram. (любители SoftIce не убивайте! Я просто когда искал 64-битный отладчик под Vista, то подошёл только этот, да и в принципе - главное уметь пользоваться) ![]() |
|
Создано: 16 июля 2007 00:56 · Поправил: SeaMan · Личное сообщение · #2 Вот полный путь notepad.exe который имхо запускается: \Windows\winsxs\amd64_microsoft-windows-notepad_31bf3856ad364e35_6.0.6 000.16386_none_c90267032b721bd5 Вобщем прошарил поиском - там их больше чем 2, всмысле notepad.exe Пока ещё не выяснил откуда ось на самом деле его берёт. Попробую пошарить по функциям до загрузки его в память (наивный) ![]() ![]() |
![]() |
eXeL@B —› Вопросы новичков —› Vista x64, Кто уже отлаживал проги под ним - поделитесь опытом! |