узнать имя пользователя

Тема в разделе "WASM.BEGINNERS", создана пользователем horpis, 21 ноя 2006.

  1. horpis

    horpis New Member

    Публикаций:
    0
    Регистрация:
    9 авг 2006
    Сообщения:
    154
    применяю GetTokenInformation и LookupAccountSid после первой же API ошибка ERROR_NOACCESS
    Код (Text):
    1. tu TOKEN_USER <>
    2.  til equ sizeof tu
    3. ....................
    4.        ;push rtil
    5.     ;push til
    6.     ;push offset tu
    7.     ;push TokenUser
    8.     ;push TOKEN_QUERY
    9.     ;call GetTokenInformation
    пробую GetUserNameExA тоже ошибка чтения памяти
    Код (Text):
    1. gunSize equ sizeof gunBuffer
    2.  gunBuffer  dd  100 dup (?)
    3. ....................................
    4.         push NameSamCompatible
    5.     push gunSize
    6.     push offset gunBuffer
    7.     call GetUserNameExA
     
  2. bolkin

    bolkin New Member

    Публикаций:
    0
    Регистрация:
    5 июл 2005
    Сообщения:
    34
    Адрес:
    Israel
    BOOLEAN GetUserNameEx(
    EXTENDED_NAME_FORMAT NameFormat,
    LPTSTR lpNameBuffer,
    PULONG nSize
    );

    PULONG - поинтер на ULONG
     
  3. horpis

    horpis New Member

    Публикаций:
    0
    Регистрация:
    9 авг 2006
    Сообщения:
    154
    именно так описано в MSDN
    я пишу:
    .data
    nSize equ sizeof lpNameBuffer ; пробовал и конкретные цифры подставлять
    lpNameBuffer db 10 dup (?) ; так же пробовал по разному объявлять
    NameFormat equ 2 ; описанно в статье msdn про EXTENDED_NAME_FORMAT

    но после вызова API система говорит что инструкция по адресу обратилась к памяти память не может быть прочитана
    так что же я не то делаю???
     
  4. horpis

    horpis New Member

    Публикаций:
    0
    Регистрация:
    9 авг 2006
    Сообщения:
    154
    победил надо было:
    push offset nSize
    push offset lpNameBuffer
    push NameFormat
    call FetUserNameExA