Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   Неполучается создать пользователя (https://forum.antichat.xyz/showthread.php?t=99823)

_nic 06.01.2009 19:58

Неполучается создать пользователя
 
Вот нашол тут http://borland.xportal.ru/forum/viewtopic.php?t=12828&start=5
Такой код:
Код:

PWCHAR  domain = NULL;
  PSID  psid = NULL;

  do {

          //Cоздаем новый аккаунт на лоакльной машине
          USER_INFO_1 ui;
          DWORD dwLevel = 1;
          DWORD dwError = 0;

          ui.usri1_name = L"user1";
          ui.usri1_password = L"1111111";
          ui.usri1_priv = USER_PRIV_USER;
          ui.usri1_home_dir = NULL;
          ui.usri1_comment = NULL;
          ui.usri1_flags = UF_SCRIPT;
          ui.usri1_script_path = NULL;

          NET_API_STATUS  nStatus = NetUserAdd(NULL,
                        dwLevel,
                        (LPBYTE)&ui,
                        &dwError);

          if (  nStatus != NERR_Success )
                break;

          //Определяем SID созданного аккаунта
          DWORD        sid_size = 0;
          DWORD        domain_size = 0;
          SID_NAME_USE  snu;

          //Первый вызов возвратит размер буферов
          LookupAccountNameW( NULL, L"user1", NULL, &sid_size,
                NULL, &domain_size, &snu );

      if ( !( domain = (PWCHAR)malloc( 2*(domain_size + 1 ) ) ) )
        break;

      if ( !(  psid = malloc( sid_size ) ) )
                break;

      if ( !LookupAccountNameW( NULL, L"user1", psid, &sid_size,
        domain, &domain_size, &snu )  )
            break;

      //Добавляем созданного пользователя в локальную группу администраторов     
      LOCALGROUP_MEMBERS_INFO_0 lmi0 = { psid };

      nStatus = NetLocalGroupAddMembers( NULL,
        L"Administrators",
        0,
                (LPBYTE)&lmi0,
                1 );

  } while ( 0 );

  if ( domain )
          free( domain );

  if ( psid )
          free( psid );

Только вот он неработает :( Новый пользователь непоявляется.У кого какие мысли по чему?Может процессу прав нехватает?
___________________________________________
GetLastError возвращяет ERROR_IO_PENDING Я вообще запутался :(


Время: 16:14