_PELDR_LoadModule

Тема в разделе "WASM.WIN32", создана пользователем Llirik, 16 май 2009.

  1. Llirik

    Llirik Member

    Публикаций:
    0
    Регистрация:
    18 июл 2008
    Сообщения:
    471
    Я немножко не понял куда возвращается значение ошибки в случае не удачного вызова _PELDR_LoadModule?
    Вот код:

    .386p
    include C:\masm32\bin\win98\inc\win98\vmm.inc
    include C:\masm32\bin\win98\inc\win98\vxdldr.inc

    DECLARE_VIRTUAL_DEVICE OSXPKERN,1,0, OSXPKERN_Control, UNDEFINED_DEVICE_ID, UNDEFINED_INIT_ORDER

    Begin_control_dispatch OSXPKERN
    Control_Dispatch Device_Init, AdExpTabl
    Control_Dispatch PELDR_ERR_FILE_UNABLETOOPEN, haler
    Control_Dispatch PELDR_ERR_MEM_NOMEMORY, halermem
    Control_Dispatch PELDR_ERR_IMAGE_INVALIDSIZE, halerim
    Control_Dispatch PELDR_ERR_IMAGE_INVALIDFORMAT, halerfor
    Control_Dispatch PELDR_ERR_FILE_READERROR, haleread
    End_control_dispatch OSXPKERN

    VxD_PAGEABLE_DATA_SEG
    halerr db "ЋвбгвбвўгҐв Ё«Ё Ї®ўаҐ¦¤Ґ­ hal.dll",0
    halerrmem db "ЌҐ¤®бв в®з­® Ї ¬пвЁ ¤«п § Јаг§ЄЁ hal.dll",0
    halerrimage db "ЋиЁЎЄ а §¬Ґа hal.dll",0
    halerrformat db "ЌҐўҐа­л© д®а¬ в hal.dll",0
    halerrread db "ЋиЁЎЄ з⥭Ёп hal.dll",0
    halhwnd dd 0
    halpath db "C:\WINDOWS.ME\SYSTEM32\hal.dll",0
    VxD_PAGEABLE_DATA_ENDS

    VxD_PAGEABLE_CODE_SEG

    BeginProc haler
    mov esi,offset32 halerr
    mov eax,0
    VMMCall Fatal_Error_Handler
    ret
    EndProc haler
    BeginProc halermem
    mov esi,offset32 halerrmem
    mov eax,0
    VMMCall Fatal_Error_Handler
    ret
    EndProc halermem
    BeginProc halerim
    mov esi,offset32 halerrimage
    mov eax,0
    VMMCall Fatal_Error_Handler
    ret
    EndProc halerim
    BeginProc halerfor
    mov esi,offset32 halerrformat
    mov eax,0
    VMMCall Fatal_Error_Handler
    ret
    EndProc halerfor
    BeginProc haleread
    mov esi,offset32 halerrread
    mov eax,0
    VMMCall Fatal_Error_Handler
    ret
    EndProc haleread
    VxD_PAGEABLE_CODE_ENDS

    VxD_INIT_CODE_SEG

    BeginProc AdExpTabl
    push 0
    push offset32 halpath
    push offset32 halhwnd
    VxDCall _PELDR_LoadModule
    ret
    EndProc AdExpTabl

    VxD_INIT_CODE_ENDS

    end
    Почему он не хочет компилироваться?
     
  2. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Llirik
    Кто его знает, VMM не поддерживается NT.
    1. Желательно код в таг взять, кнопка "Code".
    2. Это уже 11-й ваш топик, где задаётся тотже самый вопрос про VMM. Думаю следует слить все топики в один, дабы не засорять форум.
     
  3. Llirik

    Llirik Member

    Публикаций:
    0
    Регистрация:
    18 июл 2008
    Сообщения:
    471
    я спрашиваю почему ml.exe отказывается собирать этот код) а если я соберу всё в один топик, то вы и подавно не будете мне отвечать(
     
  4. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Возьми нормальный пакет какой поставь чтоб драйвера собирать. Опиши нормально задачу итебе помогут. 9x это мёртвая ось, мертвее чем дос, последний хотябы эмулируется.
     
  5. Llirik

    Llirik Member

    Публикаций:
    0
    Регистрация:
    18 июл 2008
    Сообщения:
    471
    если линия 9х мертва так почему же я на ней до сих пор работаю?
     
  6. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Llirik
    Я тоже это хотел спросить.)
     
  7. q_q

    q_q New Member

    Публикаций:
    0
    Регистрация:
    5 окт 2003
    Сообщения:
    1.706
    Llirik
    > куда возвращается значение ошибки в случае не удачного вызова _PELDR_LoadModule
    В любом случае, успех или неудача, код завершения будет в регистре eax.

    > почему ml.exe отказывается собирать этот код
    Разве он не сообщает, что ему не нравится?
    Например, конструкция
    Код (Text):
    1. Control_Dispatch PELDR_ERR_FILE_UNABLETOOPEN, haler
    2. Control_Dispatch PELDR_ERR_MEM_NOMEMORY, halermem
    3. Control_Dispatch PELDR_ERR_IMAGE_INVALIDSIZE, halerim
    4. Control_Dispatch PELDR_ERR_IMAGE_INVALIDFORMAT, halerfor
    5. Control_Dispatch PELDR_ERR_FILE_READERROR, haleread
    не является легитимной.

    [offtop]

    Llirik
    > если я соберу всё в один топик, то вы и подавно не будете мне отвечать
    Imho.
    Отсутствие ответов зависит не от местоположения вопросов, а отсутствие компетентных, в данной предметной области, участников форума.
    Если создаешь новую тему, то либо давай ссылку на предыдущую, либо заново описывай предметную область.

    [/offtop]
     
  8. Llirik

    Llirik Member

    Публикаций:
    0
    Регистрация:
    18 июл 2008
    Сообщения:
    471
    Благодарю)