Не удалось определить имя пользователя или компьютера. Возвр

unit untSecDesc;interfaceuses  Windows, Messages, SysUtils, StrUtils, LM;

type    _ACE_HEADER = record      AceType: BYTE;      AceFlags: BYTE;      AceSize: WORD;    end;    ACE_HEADER = ^_ACE_HEADER;    PACE_HEADER = ^ACE_HEADER;

type    _ACCESS_ALLOWED_ACE = record      Header: ACE_HEADER;      Mask: ACCESS_MASK;      SidStart: DWORD;    end;    ACCESS_ALLOWED_ACE = ^_ACCESS_ALLOWED_ACE;

const  RTN_OK: Integer = 0;  RTN_USAGE: Integer = 1;  RTN_ERROR: Integer = 13;

SID_SIZE: Integer = 96;  ACL_REVISION: Integer = 1;//#pragma comment(lib,”NetApi32.lib”) // Note: UNICODE entry point and argv.  This way, we don”t need to bother // with converting commandline args to Unicode //

Этот вопрос решил, а вот теперь возникает ошибка при AddAccessAllowedAce 1344. Это значит, скорее всего, что размер dwAclSize определён неправильно. Кто-нибудь делал такое?

dwAclSize:= SizeOf(ACL) + 1 * (SizeOf(ACCESS_ALLOWED_ACE) – SizeOf(DWORD)) + GetLengthSid(MypSid) ;

MypDacl:= HeapAlloc(GetProcessHeap(), 0, dwAclSize);  if MypDacl = nil then Exit;  if not InitializeAcl(MypDacl^, dwAclSize, ACL_REVISION) then Exit;  if not AddAccessAllowedAce(MypDacl^, ACL_REVISION, GENERIC_ALL, MypSid) then  begin    MessageBox(0, PChar(“AddAccessAllowedAce error! № “+ IntToStr(GetLastError())+ ” – “+ SysErrorMessage(GetLastError())), PChar(“Error!”), MB_OK);    // 1344 ERROR_ALLOTTED_SPACE_EXCEEDED    Exit;  end;

Вот что постоянно раз в 5-ть минут кидается в лог: Винда вин2к серв русская, все имена, группы и прочая ерунда английская т.к. все было мигрированно с вин НТ4

Для диагностики этого события выполните вход с неадминистративной учетной записью и на http://support.microsoft.com выполните поиск раздела “Troubleshooting 1202 events” (“Диагностика события 1202”).Не удалось разрешить в SID учетную запись или один из объектов групповой политики (GPO). Эта ошибка скорее всего вызвана неправильно введенной или удаленной учетной записью, на которую имеется ссылка в ветви “Права пользователя” или “Группы с ограниченным доступом” GPO. Для диагностики этого события администратору домена следует выполнить следующие действия:

Читайте также:  ФОРД ФОКУС 2 КОД ОШИБКИ C 1750

1. Определить учетные записи, которые не удалось разрешить в SID: в командной строке введите: FIND /I “Не удалось найти” %SYSTEMROOT%SecurityLogswinlogon.logСтрока, следующая за “Не удалось найти” в результирующей информации FIND определяет проблемные имена учетных записей.Пример: Не удается найти JohnDough.В этом случае, не удалось определить SID для имени пользователя “JohnDough”. Вероятно, это вызвано тем, что учетная запись была удалена, переименована или просто пишется по-другому (например: “JohnDoe”).

2. Определить те GPO, которые содержат несопоставимое имя учетной записи:В командной строке введите: FIND /I “JohnDough” %SYSTEMROOT%SecurityTemplatespoliciesgpt*.* Результиру ющая информация команды FIND может выглядеть примерно так: ———- GPT00000.DOM ———- GPT00001.DOM SeRemoteShutdownPrivilege=JohnDough Это указывает, что из всех GPO, примененных к этому компьютеру, несопоставимая учетная запись существует только в одном GPO. Конкретно, в кэшированном GPO под именем GPT00001.DOM. Теперь нужно определить понятное имя для этого GPO.

В моём случае ошибка возникла при добавлении второго контроллера Windows 2008 R2 x86 Rus (SRV1) к существующему домену с контроллером Windows 2008 x64 Rus (SRV2) с помощью команды:

Поскольку SRV2 функционирует на базе архитектуры x64, а SRV1 на базе x86, то для запуска adprep используется файл adprep32.exe.

Решение: папку “ru-ru” переименовать в “en-us”.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *