MsiSourceListSetInfoA 함수(msi.h)
MsiSourceListSetInfo 함수는 특정 컨텍스트에서 제품 또는 패치의 원본 목록에 대한 정보를 설정합니다.
구문
UINT MsiSourceListSetInfoA(
[in] LPCSTR szProductCodeOrPatchCode,
[in, optional] LPCSTR szUserSid,
[in] MSIINSTALLCONTEXT dwContext,
[in] DWORD dwOptions,
[in] LPCSTR szProperty,
[in] LPCSTR szValue
);
매개 변수
[in] szProductCodeOrPatchCode
제품 또는 패치의 ProductCode 또는 패치 GUID입니다. null로 끝나는 문자열을 사용합니다. 문자열이 39자를 초과하면 함수가 실패하고 ERROR_INVALID_PARAMETER 반환합니다. 이 매개 변수는 NULL일 수 없습니다.
[in, optional] szUserSid
이 매개 변수는 제품 또는 패치가 포함된 사용자 계정을 지정하는 문자열 SID일 수 있습니다. SID의 유효성이 검사되거나 확인되지 않았습니다. 잘못된 SID는 ERROR_UNKNOWN_PRODUCT 또는 ERROR_UNKNOWN_PATCH 반환할 수 있습니다. 컴퓨터 컨텍스트를 참조할 때 szUserSID 는 NULL 이어야 하며 dwContext 는 MSIINSTALLCONTEXT_MACHINE 합니다.
[in] dwContext
이 매개 변수는 제품 또는 패치 instance 컨텍스트를 지정합니다. 이 매개 변수는 다음 값 중 하나를 포함할 수 있습니다.
[in] dwOptions
dwOptions 값은 szProductCodeOrPatchCode의 의미를 지정합니다.
설정되는 속성이 "LastUsedSource"인 경우 이 매개 변수는 원본 형식을 네트워크 또는 URL로 지정합니다. 이 경우 dwOptions 매개 변수는 다음 MSISOURCETYPE_ 상수 중 하나와 다음 MSICODE_ 상수 중 하나의 조합이어야 합니다.
플래그 | 의미 |
---|---|
|
원본은 네트워크 유형입니다. |
|
원본은 URL 유형입니다. |
|
szProductCodeOrPatchCode 는 제품 코드 GUID입니다. |
|
szProductCodeOrPatchCode 는 패치 코드 GUID입니다. |
[in] szProperty
szProperty 매개 변수는 설정할 속성 값을 나타냅니다. MsiSourceListGetInfo를 통해 검색할 수 있는 모든 속성은 MsiSourceListSetInfo 호출을 통해 설정할 수 없습니다. szProperty 값은 다음 값 중 하나일 수 있습니다.
Name | 의미 |
---|---|
|
설치 미디어의 루트를 기준으로 하는 경로입니다. |
|
사용자에게 설치 미디어를 요청하는 데 사용되는 프롬프트 템플릿입니다. |
|
제품에 가장 최근에 사용된 원본 위치입니다. 원본이 등록되지 않은 경우 함수는 MsiSourceListAddSourceEx 를 호출하여 등록합니다. 등록에 성공하면 함수는 원본을 LastUsedSource로 설정합니다. |
|
원본에 있는 Windows Installer 패키지 또는 패치 패키지의 이름입니다. |
[in] szValue
속성의 새 값입니다. 새 값에 대한 유효성 검사가 수행되지 않습니다. 이 값은 NULL일 수 없습니다. 빈 문자열일 수 있습니다.
반환 값
MsiSourceListSetInfo 함수는 다음 값을 반환합니다.
값 | 의미 |
---|---|
|
사용자는 지정된 제품의 원본 목록을 설정할 수 없습니다. |
|
구성 데이터가 손상되었습니다. |
|
Windows Installer 서비스에 액세스할 수 없습니다. |
|
잘못된 매개 변수가 함수에 전달되었습니다. |
|
속성이 설정되었습니다. |
|
패치를 찾을 수 없습니다. |
|
제품을 찾을 수 없습니다. |
|
원본 속성을 찾을 수 없습니다. |
|
예기치 않은 내부 오류. |
설명
관리자는 컴퓨터 컨텍스트 또는 사용자별 컨텍스트(관리형 또는 비관리형)에 있는 제품 또는 패치 instance 설치를 수정할 수 있습니다. 사용자별 관리되는 컨텍스트에 있는 제품 또는 패치 instance 설치를 수정할 수 있습니다. 관리자는 다른 사용자의 관리되지 않는 컨텍스트에 있는 제품 또는 패치 instance 다른 사용자의 설치를 수정할 수 없습니다.
관리자가 아닌 사용자는 다른 사용자의 사용자별 컨텍스트(관리 또는 관리되지 않음)에 있는 제품 또는 패치 instance 설치를 수정할 수 없습니다. 사용자별 관리되지 않는 컨텍스트에 있는 제품 또는 패치 instance 설치를 수정할 수 있습니다. 제품 또는 패치 원본을 검색할 수 있는 경우에만 컴퓨터 컨텍스트 또는 사용자별 관리 컨텍스트에서 제품 또는 패치 instance 설치를 수정할 수 있습니다. 사용자는 정책을 설정하여 원본을 검색할 수 있습니다. 자세한 내용은 DisableBrowse, AllowLockdownBrowse 및 AlwaysInstallElevated 정책을 참조하세요.
위의 규칙에 대한 예외는 "LastUsedSource"를 등록된 원본 중 하나로 설정하는 것입니다. 원본이 이미 등록된 경우 관리자가 아닌 사용자는 정책에 관계없이 "LastUsedSource"를 자체 설치(관리형 또는 비관리형) 및 컴퓨터별 설치로 설정할 수 있습니다.
참고
msi.h 헤더는 MSiSourceListSetInfo를 유니코드 전처리기 상수의 정의에 따라 이 함수의 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 Installer 버전에 필요한 최소 Windows 서비스 팩에 대한 자세한 내용은 Windows Installer 런타임 요구 사항을 참조하세요. |
대상 플랫폼 | Windows |
헤더 | msi.h |
라이브러리 | Msi.lib |
DLL | Msi.dll |