Метод IMofCompiler::CompileBuffer (wbemcli.h)
Метод IMofCompiler::CompileBuffer компилирует либо буфер, содержащий двоичные MOF-данные, либо текстовый буфер в формате ASCII. Двоичные MOF-файлы содержат проанализированные данные и должны храниться в базе данных. Метод CompileBuffer принимает только многобайтовые массивы символов (строковые буферы), которые не заканчиваются null.
Синтаксис
HRESULT CompileBuffer(
[in] long BuffSize,
[in] BYTE *pBuffer,
[in] LPWSTR ServerAndNamespace,
[in] LPWSTR User,
[in] LPWSTR Authority,
[in] LPWSTR Password,
[in] LONG lOptionFlags,
[in] LONG lClassFlags,
[in] LONG lInstanceFlags,
[in, out] WBEM_COMPILE_STATUS_INFO *pInfo
);
Параметры
[in] BuffSize
Размер данных, на которые указывает параметр pBuffer .
[in] pBuffer
Указатель на данные двоичного MOF-файла или текстовый буфер в формате ASCII.
[in] ServerAndNamespace
Имя сервера и пространство имен.
Этот параметр игнорируется, если только параметр pBuffer не указывает на текстовый буфер. Если MOF-файл текста передается без оператора #pragma , то MOF-файл компилируется в пространство имен по умолчанию. Если pBuffer указывает на двоичный MOF-файл, параметр ServerAndNamespace должен иметь значение NULL.
[in] User
Имя пользователя, запрашивающего службу.
Этот параметр задает учетные данные для компиляции на удаленных компьютерах. Если значение равно NULL, то контекст пользователя — это то, что использует текущий процесс. Это всегда игнорируется при подключении к локальному компьютеру. Дополнительные сведения см. в разделе «Примечания».
[in] Authority
Указывает учетные данные для компиляции на удаленных компьютерах. Если значение равно NULL, то контекстом центра является то, что использует текущий процесс. Этот параметр всегда игнорируется при подключении к локальному компьютеру. Дополнительные сведения см. в разделе «Примечания».
[in] Password
Указывает учетные данные для компиляции на удаленных компьютерах. Если значение равно NULL, используется пароль текущего контекста. Этот параметр всегда игнорируется при подключении к локальному компьютеру.
[in] lOptionFlags
Вы можете объединить один или несколько следующих флагов.
WBEM_FLAG_CHECK_ONLY
Выполняет только синтаксическую проверка.
WBEM_FLAG_AUTORECOVER
Если метод выполнен успешно, он добавляет имя файла в список файлов, которые будут компилироваться во время автоматического восстановления базы данных.
Этот флаг не может быть объединён с флагами пространства имен, класса или экземпляра.
WBEM_FLAG_CONSOLE_PRINT
Отправляет различные полезные сообщения в консоль.
WBEM_FLAG_DONT_ADD_TO_LIST
Предотвращает добавление файла в список скомпилированных файлов во время автоматического восстановления базы данных.
Этот флаг несовместим с WBEM_FLAG_AUTORECOVER.
[in] lClassFlags
Этот параметр игнорируется, так как двоичный MOF-файл уже содержит сведения. Значение параметра должно быть равно 0.
[in] lInstanceFlags
Игнорируется, так как двоичный MOF-файл уже содержит сведения. Значение параметра должно быть равно 0.
[in, out] pInfo
Указатель на WBEM_COMPILE_STATUS_INFO , описывающий ошибку.
Если значение параметра не равно NULL, произошла ошибка и структура заполняется сведениями об ошибке.
Возвращаемое значение
Этот метод возвращает WBEM_S_NO_ERROR в случае успешного выполнения. Если метод завершается неудачно, он возвращает WBEM_S_FALSE.
Комментарии
Если параметр User принимает форму <домен\пользователь>, параметр Authority должен иметь значение NULL.
Двоичные MOF-данные могут быть созданы методом CreateBMOF , который сохраняет двоичные MOF-данные в файл, который можно считывать перед вызовом метода CompileBuffer .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista |
Минимальная версия сервера | Windows Server 2008 |
Целевая платформа | Windows |
Header | wbemcli.h (включая Wbemidl.h) |
Библиотека | Wbemuuid.lib |
DLL | Mofd.dll |