다음을 통해 공유


IMofCompiler::CompileFile 메서드(wbemcli.h)

IMofCompiler::CompileFile 메서드는 MOF 파일(이진 MOF 포함)을 컴파일하고 WMI 리포지토리에 정보를 저장합니다. 이 메서드는 Mofcomp 명령과 동일한 작업을 수행합니다.

구문

HRESULT CompileFile(
  [in]      LPWSTR                   FileName,
  [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] FileName

컴파일할 파일의 이름입니다.

[in] ServerAndNamespace

클래스 또는 instance 기록되는 기본 네임스페이스의 경로입니다.

원격 컴퓨터에서 네임스페이스를 지정할 수 있습니다(예: "\computer\root"). 이 값은 #pragma 명령으로 재정의할 수 있으며 자동 복구가 필요한 경우 사용하면 안 됩니다. NULL인 경우 로컬 컴퓨터의 root\default 네임스페이스가 기본값입니다.

[in] User

원격 컴퓨터에서 컴파일하는 데 사용되는 자격 증명을 지정하는 값입니다. 값이 NULL인 경우 사용자 컨텍스트는 호출 프로세스에서 사용하는 항목입니다. 로컬 컴퓨터에 연결할 때 항상 무시됩니다. 자세한 내용은 주의 섹션을 참조하세요.

[in] Authority

원격 컴퓨터에서 컴파일하기 위한 자격 증명을 지정하는 값입니다. 값이 NULL이면 권한 컨텍스트는 호출 프로세스에서 사용하는 모든 컨텍스트입니다. 로컬 컴퓨터에 연결할 때 항상 무시됩니다. 자세한 내용은 주의 섹션을 참조하세요.

[in] Password

원격 컴퓨터에서 컴파일하기 위한 자격 증명을 지정하는 값입니다. 값이 NULL이면 현재 컨텍스트의 암호가 사용됩니다. 로컬 컴퓨터에 연결할 때 항상 무시됩니다.

[in] lOptionFlags

CompileFile 메서드를 사용할 때 다음 플래그 중 하나 이상의 조합을 사용하도록 설정하는 매개 변수입니다.

WBEM_FLAG_CHECK_ONLY

구문 검사 수행합니다.

WBEM_FLAG_AUTORECOVER

메서드가 성공하면 자동 데이터베이스 복구 중에 컴파일할 파일 목록에 파일 이름을 추가합니다.

이 플래그는 네임스페이스, 클래스 또는 instance 플래그와 결합할 수 없습니다.

WBEM_FLAG_CONSOLE_PRINT

콘솔에 다양한 유용한 메시지를 보냅니다.

WBEM_FLAG_DONT_ADD_TO_LIST

자동 데이터베이스 복구 중에 컴파일된 파일 목록에 파일이 추가되지 않도록 합니다.

이 플래그는 WBEM_FLAG_AUTORECOVER 호환되지 않습니다.

[in] lClassFlags

클래스 만들기를 제어하는 플래그입니다.

매개 변수는 0이거나 다음 값의 조합일 수 있습니다.

WBEM_FLAG_UPDATE_ONLY

클래스 생성을 방지합니다.

이 플래그를 WBEM_FLAG_UPDATE_SAFE_MODE 또는 WBEM_FLAG_UPDATE_FORCE_MODE 결합할 수 있습니다.

WBEM_FLAG_CREATE_ONLY

클래스 만들기만 허용합니다.

이 플래그를 다른 플래그와 결합할 수 없습니다.

WBEM_FLAG_UPDATE_SAFE_MODE

충돌이 없는 한 클래스를 업데이트.

이 플래그를 WBEM_FLAG_UPDATE_ONLY 결합할 수 있습니다.

WBEM_FLAG_UPDATE_FORCE_MODE

가능한 경우 충돌을 업데이트 해결합니다. 강제 모드를 사용하여 정적 클래스를 업데이트하면 해당 클래스의 모든 인스턴스가 삭제됩니다. 공급자 클래스의 강제 업데이트는 클래스의 인스턴스를 삭제하지 않습니다.

이 플래그를 llnstanceFlags와 결합할 수 있습니다.

[in] lInstanceFlags

인스턴스 생성을 제어하는 플래그입니다.

매개 변수 값은 0 또는 다음 플래그 중 하나일 수 있습니다.

WBEM_FLAG_UPDATE_ONLY

업데이트만 허용합니다.

WBEM_FLAG_CREATE_ONLY

새 인스턴스만 허용합니다.

[in, out] pInfo

오류를 설명하는 WBEM_COMPILE_STATUS_INFO 대한 포인터입니다.

매개 변수 값이 NULL이 아니면 오류가 발생하고 구조체가 오류 정보로 채워집니다.

반환 값

이 메서드는 이러한 값 중 하나를 반환할 수 있습니다.

2

#pragma 자동 복구 문이 없음을 경고합니다. 이 문은 MOF 파일의 첫 번째 줄 중 하나여야 합니다.

설명

User 매개 변수가 domain\user> 형식 < 인 경우 Authority 매개 변수는 NULL이어야 합니다.

요구 사항

   
지원되는 최소 클라이언트 Windows Vista
지원되는 최소 서버 Windows Server 2008
대상 플랫폼 Windows
헤더 wbemcli.h(Wbemidl.h 포함)
라이브러리 Wbemuuid.lib
DLL Mofd.dll

추가 정보

IMofCompiler

WBEM_CHANGE_FLAG_TYPE

WBEM_COMPILER_OPTIONS

mofcomp