Méthode IMofCompiler ::CompileBuffer (wbemcli.h)
La méthode IMofCompiler ::CompileBuffer compile une mémoire tampon contenant des données MOF binaires ou une mémoire tampon de texte au format ASCII. Les fichiers MOF binaires contiennent des données analysées et doivent être stockés dans la base de données. La méthode CompileBuffer accepte uniquement les tableaux de caractères multioctets (mémoires tampons de chaîne) qui ne sont pas terminés par null.
Syntaxe
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
);
Paramètres
[in] BuffSize
Taille des données pointées par le paramètre pBuffer .
[in] pBuffer
Pointeur vers les données de fichier MOF binaires ou une mémoire tampon de texte au format ASCII.
[in] ServerAndNamespace
Nom du serveur et de l’espace de noms.
Ce paramètre est ignoré, sauf si le paramètre pBuffer pointe vers une mémoire tampon de texte. Si le texte MOF est passé sans instruction #pragma , le fichier MOF est compilé dans l’espace de noms par défaut. Si pBuffer pointe vers un fichier MOF binaire, le paramètre ServerAndNamespace doit être NULL.
[in] User
Nom de l’utilisateur qui demande le service.
Ce paramètre spécifie les informations d’identification pour la compilation sur les ordinateurs distants. Si la valeur est NULL, le contexte utilisateur correspond à ce que le processus actuel utilise. Cela est toujours ignoré lors de la connexion à l’ordinateur local. Pour plus d'informations, consultez la section Notes.
[in] Authority
Spécifie les informations d’identification pour la compilation sur les ordinateurs distants. Si la valeur est NULL, le contexte d’autorité correspond à ce que le processus actuel utilise. Ce paramètre est toujours ignoré lors de la connexion à l’ordinateur local. Pour plus d'informations, consultez la section Notes.
[in] Password
Spécifie les informations d’identification pour la compilation sur les ordinateurs distants. Si la valeur est NULL, le mot de passe du contexte actuel est utilisé. Ce paramètre est toujours ignoré lors de la connexion à l’ordinateur local.
[in] lOptionFlags
Vous pouvez combiner un ou plusieurs des indicateurs suivants.
WBEM_FLAG_CHECK_ONLY
Exécute uniquement une syntaxe case activée.
WBEM_FLAG_AUTORECOVER
Si la méthode réussit, elle ajoute le nom de fichier à la liste des fichiers à compiler lors de la récupération automatique de la base de données.
Cet indicateur ne peut pas être combiné avec l’espace de noms, la classe ou les indicateurs instance.
WBEM_FLAG_CONSOLE_PRINT
Envoie différents messages utiles à la console.
WBEM_FLAG_DONT_ADD_TO_LIST
Empêche l’ajout du fichier à la liste des fichiers à compiler lors de la récupération automatique de la base de données.
Cet indicateur n’est pas compatible avec WBEM_FLAG_AUTORECOVER.
[in] lClassFlags
Ce paramètre est ignoré, car le fichier MOF binaire contient déjà les informations. La valeur du paramètre doit être 0.
[in] lInstanceFlags
Ignoré, car le fichier MOF binaire contient déjà les informations. La valeur du paramètre doit être 0.
[in, out] pInfo
Pointeur vers un WBEM_COMPILE_STATUS_INFO qui décrit une erreur.
Si la valeur du paramètre n’est pas NULL, une erreur s’est produite et la structure est remplie d’informations d’erreur.
Valeur retournée
Cette méthode retourne WBEM_S_NO_ERROR si elle réussit. Si la méthode échoue, elle retourne WBEM_S_FALSE.
Remarques
Si le paramètre User prend la forme <domain\user>, le paramètre Authority doit être NULL.
Les données MOF binaires peuvent être générées par la méthode CreateBMOF , qui stocke les données MOF binaires dans un fichier qui peut être lu avant d’appeler la méthode CompileBuffer .
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista |
Serveur minimal pris en charge | Windows Server 2008 |
Plateforme cible | Windows |
En-tête | wbemcli.h (include Wbemidl.h) |
Bibliothèque | Wbemuuid.lib |
DLL | Mofd.dll |