Всем хай. Начну с того что я ленивый и мне в лом переводить системные структуры из одного языка в другой, но приходится. и тут меня торкнуло! Увидел что ProcessExp от Systinternal может смотреть структуры те, что валидны для Текущей винды, т.е. для той винды, на которой запустили этот вьювер! Как она это делает уже не раз писали в манах. Вобщем пришел к такой идее: 1. Утиллита, получает на входе параметр, а это слова "cpp", "asm","delphi" и делает на этом языки структуры! 2. утиллита смотрит ini-файл, а внем указаны dll-файлы. Для указанных длл проверяется, а есть ли pdb-файлы(файлы символов), если нет грузит с MS. После начинает смотреть файл и все структуры, которые тама есть, выводятся на выводной файл к примеру kernel32.inc в виде структуры на указанном в п1 языке! 3. Утиллита, анализирует ntdll и для ситуаций: Код (Text): ; __stdcall NtOpenFile(x, x, x, x, x, x) public _NtOpenFile@24 _NtOpenFile@24 proc near mov eax, 74h ; NtOpenFile mov edx, 7FFE0300h call dword ptr [edx] retn 18h _NtOpenFile@24 endp выводит константы, которые можно применить Этот процесс дает корректные для данной системы инклуды! вопрос: может уже есть подобная утиллита, а я изобретаю велосипед? Если нет, может кто-нить присоединиться. Язык реализации на си или c++
на масм32.ком на форуме фыкладывали тулзу каторая хэдери из ддк переделывает для асма. Может это то что тебе нужно?
на 2 часа работы: переделать pdbdump изменить строку формата в printf... только dia из msdn2003 унмэнглит криво.