компилирование неэкспортируемых функций

Тема в разделе "WASM.BEGINNERS", создана пользователем loginrl_103, 20 май 2008.

  1. loginrl_103

    loginrl_103 New Member

    Публикаций:
    0
    в драйвере использую zwcreatethread , но она не экспоритруется ядром => не компилится. один из вариантов - делать вызов напрямую через номер сервиса, но...хотелось бы узнать как всё таки "по-человечески"...
     
  2. asmfan

    asmfan New Member

    Публикаций:
    0
    Это и есть по-человечески для неэкспортируемых
     
  3. loginrl_103

    loginrl_103 New Member

    Публикаций:
    0
    ммм...во многих проектах используются неэкспортируемые функции без таких извращений...
     
  4. 2FED

    2FED New Member

    Публикаций:
    0
    Код (Text):
    1. NTSTATUS
    2.   PsCreateSystemThread(
    3.     OUT PHANDLE  ThreadHandle,
    4.     IN ULONG  DesiredAccess,
    5.     IN POBJECT_ATTRIBUTES  ObjectAttributes  OPTIONAL,
    6.     IN HANDLE  ProcessHandle  OPTIONAL,
    7.     OUT PCLIENT_ID  ClientId  OPTIONAL,
    8.     IN PKSTART_ROUTINE  StartRoutine,
    9.     IN PVOID  StartContext
    10.     );
     
  5. n0name

    n0name New Member

    Публикаций:
    0
    loginrl_103
    пример можно?
    недокументирована != неэкспортируема.
     
  6. loginrl_103

    loginrl_103 New Member

    Публикаций:
    0
    2fed - описание есть
    n0name - неэкспортируема.

    проблема решилась подключением к драйверу при компиляции ntdll.lib...)
     
  7. 2FED

    2FED New Member

    Публикаций:
    0
    loginrl_103 блин ZwCreateThread это для юзермода, а в драйвере надо юзать PsCreateSystemThread, описание в MSDN,WINDDK
     
  8. n0name

    n0name New Member

    Публикаций:
    0
    это смотря что хочешь сделать.