Функция NetRequestOfflineDomainJoin (lmjoin.h)
Функция NetRequestOfflineDomainJoin выполняется локально на компьютере для изменения образа операционной системы Windows, подключенного на томе. Реестр загружается из образа, а данные blob-объекта подготовки записываются там, где их можно получить на этапе завершения операции автономного присоединения к домену.
Синтаксис
NET_API_STATUS NET_API_FUNCTION NetRequestOfflineDomainJoin(
[in] BYTE *pProvisionBinData,
[in] DWORD cbProvisionBinDataSize,
[in] DWORD dwOptions,
[in] LPCWSTR lpWindowsPath
);
Параметры
[in] pProvisionBinData
Указатель на буфер, необходимый для инициализации реестра образа операционной системы Windows для обработки окончательного изменения локального состояния на этапе завершения операции автономного присоединения к домену.
Непрозрачный двоичный BLOB-объект сериализованных метаданных, передаваемых в параметре pProvisionBinData , возвращается функцией NetProvisionComputerAccount .
[in] cbProvisionBinDataSize
Размер (в байтах) буфера, на который указывает параметр pProvisionBinData .
Этот параметр не должен иметь значение NULL.
[in] dwOptions
Набор битовых флагов, определяющих параметры для этой функции. Этот параметр может быть одним или несколькими из следующих значений, определенных в файле заголовка Lmjoin.h .
[in] lpWindowsPath
Указатель на константную символьную строку, завершающуюся null, которая указывает путь к образу операционной системы Windows, в котором находятся кусты реестра. Этот образ должен находиться в автономном режиме и не загружаться в данный момент, если параметр dwOptions не содержит NETSETUP_PROVISION_ONLINE_CALLER в этом случае разрешен локальный каталог операционной системы.
Этот путь может быть UNC-путем на удаленном сервере.
Возвращаемое значение
Если функция выполнена успешно, возвращаемое значение будет NERR_Success.
Если функция завершается сбоем, возвращаемым значением может быть один из следующих кодов ошибок или один из кодов системных ошибок.
Код возврата | Описание |
---|---|
|
Отказано в доступе". Эта ошибка возвращается, если вызывающий объект не имеет достаточных привилегий для завершения операции. |
|
Запрошенная операция требует повышения прав. |
|
Неправильный параметр. Эта ошибка возвращается, если параметры pProvisionBinData, cbProvisionBinDataSize или lpWindowsPath имеют значение NULL. Эта ошибка также возвращается, если буфер, на который указывает параметр pProvisionBinData , не содержит допустимых данных в большом двоичном объекте для домена, имени учетной записи компьютера или пароля учетной записи компьютера. Эта ошибка также возвращается, если строка, указывающая на параметр lpWindowsPath , не определяет путь к образу операционной системы Windows. |
|
Запрос не поддерживается. Эта ошибка возвращается, если указанный сервер не поддерживает эту операцию. Например, если параметр lpWindowsPath ссылается на установку Windows, настроенную в качестве контроллера домена. |
|
Служба рабочей станции не запущена. |
Комментарии
Функция NetRequestOfflineDomainJoin поддерживается в Windows 7 для операций автономного присоединения к домену.
Функция NetRequestOfflineDomainJoin используется локально на компьютере для изменения образа операционной системы Windows, подключенного на томе. Реестр загружается для образа, а данные blob-объекта подготовки записываются там, где их можно получить на этапе завершения операции автономного присоединения к домену. В сценарии автономного присоединения к домену эти функции используются следующим образом:
- NetProvisionComputerAccount — это функция подготовки, которая сначала вызывается для выполнения сетевых операций, необходимых для создания и настройки объекта-компьютера в Active Directory. Выходные данные NetProvisionComputerAccount представляют собой непрозрачный двоичный BLOB-объект сериализованных метаданных, используемых для следующего шага.
- NetRequestOfflineDomainJoin , функция инициализации образа, затем вызывается для внедрения выходных данных функции подготовки NetProvisionComputerAccount в образ операционной системы Windows, который будет использоваться во время установки. Изменения в коде инициализации Windows обнаруживают это сохраненное состояние и влияют на локальную только часть присоединения к домену.
Функция NetProvisionComputerAccount создает или повторно использует учетную запись компьютера в домене, собирает все необходимые метаданные и возвращает их в непрозрачный двоичный BLOB-объект с управлением версиями или в виде текста для внедрения в файл ответов автоматической установки. Непрозрачный двоичный BLOB-объект может использоваться операцией запроса автономного присоединения к домену, предоставляя все необходимые входные данные для завершения присоединения к домену во время первой загрузки без каких-либо сетевых операций (только обновления локального состояния). Обратите внимание, что большой двоичный объект содержит материал пароля учетной записи компьютера, по сути, в файле clear. Проект не предусматривает никаких положений для защиты этих данных. Эта проблема возникает в настоящее время с файлами ответов автоматической установки, которые могут содержать ряд секретов, включая пароли пользователей домена. Вызывающий объект должен защитить большой двоичный объект и файлы автоматической установки. Решения этой проблемы разнообразны. Например, предварительно обмениваемые ключи можно использовать для шифрования сеанса между объектом-получателем и сущностью подготовки, что обеспечивает безопасную передачу непрозрачного большого двоичного объекта .
Непрозрачный BLOB-объект, возвращаемый в параметре pProvisionBinData функцией NetProvisionComputerAccount , имеет версию, чтобы обеспечить совместимость и удобство обслуживания между разными версиями Windows (присоединение клиента, компьютера подготовки и контроллера домена). Сценарий автономного присоединения в настоящее время не ограничивает время существования большого двоичного объекта, возвращаемого функцией NetProvisionComputerAccount .
Дополнительные сведения об операциях автономного присоединения к домену см. в пошаговом руководстве по автономному присоединению к домену.
Требования
Минимальная версия клиента | Windows 7 [только классические приложения] |
Минимальная версия сервера | Ни одна версия не поддерживается |
Целевая платформа | Windows |
Header | lmjoin.h (включая Lm.h) |
Библиотека | Netapi32.lib |
DLL | Netapi32.dll |
См. также раздел
NetRequestProvisioningPackageInstall