다음을 통해 공유


MsiDatabaseOpenViewA 함수(msiquery.h)

MsiDatabaseOpenView 함수는 데이터베이스 쿼리를 준비하고 뷰 개체를 만듭니다. 이 함수는 MsiCloseHandle을 사용하여 닫아야 하는 핸들을 반환합니다.

구문

UINT MsiDatabaseOpenViewA(
  [in]  MSIHANDLE hDatabase,
  [in]  LPCSTR    szQuery,
  [out] MSIHANDLE *phView
);

매개 변수

[in] hDatabase

뷰 개체를 열 데이터베이스에 대한 핸들입니다. 데이터베이스 핸들 가져오기에 설명된 대로 핸들을 가져올 수 있습니다.

[in] szQuery

데이터베이스를 쿼리하기 위한 SQL 쿼리 문자열을 지정합니다. 올바른 구문은 SQL 구문을 참조하세요.

[out] phView

반환된 뷰에 대한 핸들에 대한 포인터입니다.

반환 값

MsiDatabaseOpenView 함수는 다음 값 중 하나를 반환합니다.

성공하면 ERROR_SUCCESS phView [out] 매개 변수가 가리키는 뷰 핸들이 설정됩니다.

ERROR_INVALID_HANDLE, ERROR_INVALID_HANDLE_STATE, ERROR_BAD_QUERY_SYNTAX 또는 실패 시 ERROR_GEN_FAILURE MsiGetLastErrorRecord를 통해 액세스할 수 있는 오류 레코드를 설정합니다.

설명

MsiDatabaseOpenView 함수는 데이터베이스에 대한 뷰 개체를 엽니다. 실행 또는 페치를 수행하기 전에 데이터베이스에 대한 뷰 개체를 열어야 합니다.

오류가 발생하면 MsiGetLastErrorRecord 를 호출하여 자세한 내용을 확인할 수 있습니다.

설치 관리자가 SCOPE 나가는 동안 PMSIHANDLE 개체를 닫고 MsiCloseHandle을 호출하여 MSIHANDLE 개체를 닫아야 하므로 PMSIHANDLE 형식의 변수를 사용하는 것이 좋습니다. 자세한 내용은 Windows Installer 모범 사례HANDLE 대신 PMSIHANDLE 사용 섹션을 참조하세요.

함수가 실패하면 MsiGetLastErrorRecord를 사용하여 확장된 오류 정보를 얻을 수 있습니다.

참고

msiquery.h 헤더는 MSiDatabaseOpenView를 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Server 2012, Windows 8, Windows Server 2008 R2 또는 Windows 7의 Windows Installer 5.0. Windows Server 2008 또는 Windows Vista의 Windows Installer 4.0 또는 Windows Installer 4.5. Windows Server 2003 또는 Windows XP의 Windows Installer
대상 플랫폼 Windows
헤더 msiquery.h
라이브러리 Msi.lib
DLL Msi.dll

추가 정보

일반 데이터베이스 액세스 함수