MofComp
O compiladorManaged Object Format (MOF) analisa um arquivo que contém instruções MOF e adiciona as classes e instâncias de classe definidas no arquivo ao repositório WMI. Os arquivos MOF geralmente são compilados automaticamente durante a instalação dos sistemas com os quais são fornecidos, mas você também pode compilar arquivos MOF usando esta ferramenta.
Para obter mais informações sobre como localizar e usar mofcomp.exe, consulte Usando ferramentas de gerenciamento WMI. Para obter informações sobre como remover classes e instâncias do repositório WMI, consulte o comando pragma deleteclass preprocessor.
O exemplo de código a seguir mostra como executar o compilador MOF em um arquivo.
mofcomp
[-autorecover]
[-check]
[-N:<namespacepath>]
[-class:createonly | -class:forceupdate |
-class:safeupdate | -class:updateonly ]
[-instance:updateonly | -instance:createonly]
[-B:<filename>]
[-WMI]
[-P:<Password>]
[-U:<UserName>]
[-A:<Authority>]
[-MOF:<path>]
[-MFL:<path>]
[-AMENDMENT:<Locale>]
[-ER:<ResourceName>]
[-L:<ResourceLocale>]
<MOFfile>
Comutadores
-
-autorecover
-
Adiciona o arquivo MOF nomeado à lista de arquivos compilados durante a recuperação do repositório. A lista de arquivos MOF de recuperação automática é armazenada na chave do Registro:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WBEM\CIMOM\
Os arquivos MOF listados nesta entrada do Registro devem residir no computador local porque os arquivos MOF que usam o comando de recuperação automática não podem recuperar arquivos MOF localizados em um computador remoto.
Observação
Para garantir que todas as definições de classe WMI para objetos gerenciados sejam restauradas no repositório WMI se o WMI tiver uma falha e for reiniciado, use a instrução #pragma autorecuperação pré-processador no arquivo Managed Object Format (MOF).
-
-verificar
-
Solicita que o compilador execute apenas uma verificação de sintaxe e imprima mensagens de erro apropriadas. Nenhum outro interruptor pode ser usado com este interruptor. Quando essa opção é usada, nenhuma conexão com a Instrumentação de Gerenciamento do Windows (WMI) é estabelecida e nenhuma modificação no repositório WMI é feita.
-
-N:<namespacepath>
- Solicita que o compilador carregue o arquivo MOF no namespace especificado como *namespacepath*. O MOF compilado é carregado no namespace Mofcomp padrão, root\\default, a menos que essa opção seja usada. Você também pode inserir o comando de pré-processador **\#pragma namespace ("***namespace path***")** no arquivo MOF para obter o mesmo efeito. Se a opção **-N:** e o comando \#pragma namespace forem usados, \#**pragma namespace** **autorecover** terá prioridade. Nesse caso, a única maneira de compilar o MOF em outro namespace é editar o arquivo MOF e alterar o comando \#**pragma namespace**. Um computador remoto pode ser especificado usando \\\\machinename\\root\\default.
-
-class:createonly
-
Solicita que o compilador não faça alterações nas classes existentes. Quando essa opção é usada, a operação de compilação é encerrada se já existir uma classe especificada no arquivo MOF.
-
-class:forceupdate
-
Força atualizações de classes quando existem classes filhas conflitantes. Por exemplo, suponha que um qualificador de classe é definido em uma classe filho e a classe base tenta adicionar o mesmo qualificador. No modo de -class:forceupdate, o compilador MOF resolve esse conflito excluindo o qualificador conflitante na classe filho. Se a classe filho tiver instâncias, a atualização forçada falhará.
-
-class:safeupdate
-
Permite atualizações de turmas mesmo que haja turmas filhas, desde que a alteração não cause conflitos com turmas filhas. Por exemplo, esse sinalizador permite adicionar uma nova propriedade à classe base que não foi mencionada anteriormente em classes filhas. Se as classes filho tiverem instâncias, a atualização falhará.
-
-class:updateonly
-
Solicita que o compilador não crie novas classes. Quando essa opção é usada, a operação de compilação termina se uma classe especificada no arquivo MOF não existir.
-
-instance:UpdateOnly
-
Solicita que o compilador não crie novas instâncias. Quando essa opção é usada, a operação de compilação é encerrada se uma instância especificada no arquivo MOF não existir.
-
-instance:createonly
-
Solicita que o compilador não faça alterações em instâncias existentes. Quando essa opção é usada, a operação de compilação é encerrada se uma instância especificada no arquivo MOF já existir.
-
-B:<nome do arquivo>
-
Solicita que o compilador crie uma versão binária do arquivo MOF com o nome nome do arquivo sem fazer modificações no repositório WMI.
Se você usar a opção -B:<filename> para criar um arquivo MOF binário, somente os tipos de qualificador padrão serão armazenados no repositório WMI.
O formato MOF binário é o formato intermediário para combinar um driver WDM com o MOF como um recurso. O MOF binário representa classes e instâncias assim como um arquivo MOF de texto e é compactado antes de ser armazenado no disco.
-
-WMI
-
Solicita que o compilador execute uma verificação de sintaxe WMI. O interruptor -B: deve ser usado com este interruptor. O switch -WMI é usado apenas para criar arquivos MOF binários para uso por drivers de dispositivo WDM. Essa opção invoca um verificador de arquivo MOF binário separado, que é executado depois que o arquivo MOF binário é criado.
-
-P:<> de senha
-
Especifica Senha como a senha a ser inserida pelo usuário do computador ao fazer logon.
-
-U:<nome de usuário>
-
Especifica UserName como o nome do usuário que faz logon.
-
-A: Autoridade<>
-
Especifica Autoridade como a autoridade (nome de domínio) a ser usada ao fazer logon no WMI.
-
-MOF:<caminho>
-
Nome da saída neutra do idioma. Usado com a opção -AMENDMENT para especificar o nome do arquivo MOF com neutralidade de idioma que será gerado.
-
-MFL:<caminho>
-
Nome da saída específica do idioma. Usado com a opção -AMENDMENT para especificar o nome do arquivo MOF específico do idioma que será gerado.
-
-ALTERAÇÃO:<Locale>
-
Divide o arquivo MOF em versões -specific e neutras em termos de idioma. O compilador MOF cria uma forma neutra de idioma do arquivo MOF que tem todos os qualificadores alterados removidos. Uma versão localizada do arquivo MOF também é criada com uma extensão de nome de arquivo MFL. O parâmetro Locale especifica o nome do namespace filho que contém as definições de classe localizadas. O formato do parâmetro Locale é MS_xxx em que xxx é o valor hexadecimal do LCID do Windows. Por exemplo, a localidade do inglês americano é MS_409.
-
-ER <ResourceName>
-
Extrai MOF binário de um recurso nomeado. Essa opção obtém o MOF binário da classe no repositório WMI, enquanto a opção -B cria o formato MOF binário a partir de um arquivo MOF.
-
-L:<> ResourceLocale
-
Opcional. Extrai as descrições MOF localizadas do MOF binário quando usado com -ER switch.
-
< MOFfile>
-
Nome do arquivo a ser analisado.
Valores de retorno
Como sua primeira operação, o compilador MOF executa uma verificação de sintaxe no arquivo MOF. Se o compilador encontrar algum erro, ele imprime uma mensagem de erro e o processo é encerrado.
O compilador MOF pode retornar os seguintes valores:
-
0
-
A operação de compilação MOF foi bem-sucedida.
-
1
-
O compilador MOF não pôde se conectar com o servidor WMI. Isso ocorre devido a um erro semântico, como uma incompatibilidade com o repositório WMI existente, ou a um erro real, como a falha de inicialização do servidor WMI.
-
2
-
Uma ou mais opções de linha de comando não eram válidas.
-
3
-
Ocorreu um erro de sintaxe MOF.
Se o arquivo MOF for analisado corretamente, mas for feita uma tentativa de executar uma operação que é proibida por uma opção de linha de comando, o compilador retorna um código de erro gerado pelo WMI em vez de qualquer um dos códigos de retorno listados na lista anterior. Por exemplo, um código de erro WMI é retornado quando a opção -instance:updateonly é especificada e o arquivo MOF tenta criar uma instância.
Se a instrução #pragma autorecover preprocessor não estiver no arquivo, o seguinte aviso será retornado:
WARNING: FileYourMof.Mof does not contain #PRAGMA AUTORECOVER.
If the WMI repository is rebuilt in the future, the contents of this
MOF file will not be included in the new WMI repository.
To include this MOF file when the WMI Repository is automatically
reconstructed, place the #PRAGMA AUTORECOVER statement on the first
line of the MOF file.
Comentários
O compilador MOF está disponível no diretório %Windir%\System32\wbem. Você deve especificar o arquivo MOF como o parâmetro do compilador MOF. Você também pode especificar uma opção de Autorecuperação se quiser que o arquivo MOF seja recompilado automaticamente se o Repositório CIM precisar ser recuperado automaticamente. Para obter mais informações, digite Mofcomp /? no prompt de comando.
Um arquivo MOF que usa o conjunto de caracteres Unicode contém uma assinatura como os dois primeiros bytes do arquivo. Essa assinatura é U+FFFE ou U+FEFF, dependendo da ordem de bytes do arquivo.
Quando não ocorrem erros no processo de análise, o compilador MOF se conecta ao servidor WMI em execução no computador local, a menos que a opção -check seja especificada. As classes e instâncias definidas no arquivo MOF são adicionadas ao repositório WMI.
Quando ocorre um erro ao atualizar o repositório WMI, o compilador não faz nenhuma tentativa de retornar o repositório ao seu estado antes do compilador começar a processar.
Windows 8: Ao instalar um provedor, o mofcomp trata os qualificadores [Key] e [Static] como verdadeiros se estiverem presentes, independentemente de seus valores reais. Outros qualificadores são tratados como falsos se estiverem presentes, mas não explicitamente definidos como verdadeiros.
Requerimentos
Exigência | Valor |
---|---|
Cliente mínimo suportado |
Windows Vista |
Servidor mínimo suportado |
Windows Server 2008 |