Share via


AssocQueryStringA 함수(shlwapi.h)

레지스트리에서 파일 또는 프로토콜 연결 관련 문자열을 검색하고 검색합니다.

구문

LWSTDAPI AssocQueryStringA(
  [in]            ASSOCF   flags,
  [in]            ASSOCSTR str,
  [in]            LPCSTR   pszAssoc,
  [in, optional]  LPCSTR   pszExtra,
  [out, optional] LPSTR    pszOut,
  [in, out]       DWORD    *pcchOut
);

매개 변수

[in] flags

형식: ASSOCF

검색을 제어하는 데 사용할 수 있는 플래그입니다. 하나의 ASSOCF_INIT 값만 포함할 수 있다는 점을 제외하고 ASSOCF 값의 조합일 수 있습니다.

[in] str

형식: ASSOCSTR

반환할 문자열의 형식을 지정하는 ASSOCSTR 값입니다.

[in] pszAssoc

형식: LPCTSTR

루트 키를 확인하는 데 사용되는 null로 끝나는 문자열에 대한 포인터입니다. 다음 네 가지 유형의 문자열을 사용할 수 있습니다.

  1. 파일 이름 확장명: 파일 이름 확장명(예: .txt)입니다.
  2. CLSID: 표준 "{GUID}" 형식의 CLSID GUID입니다.
  3. ProgID: 애플리케이션의 ProgID(예: Word). Document.8.
  4. 실행 파일 이름: 애플리케이션의 .exe 파일의 이름입니다. ASSOCF_OPEN_BYEXENAME 플래그는 플래그로 설정해야 합니다.

[in, optional] pszExtra

형식: LPCTSTR

문자열의 위치에 대한 추가 정보가 포함된 선택적 null로 끝나는 문자열입니다. 일반적으로 open과 같은 셸 동사로 설정됩니다. 이 매개 변수를 사용하지 않는 경우 NULL 로 설정합니다.

[out, optional] pszOut

형식: LPTSTR

이 함수가 성공적으로 반환될 때 요청된 문자열을 수신하는 null로 끝나는 문자열에 대한 포인터입니다. 필요한 버퍼 크기를 검색하려면 이 매개 변수를 NULL 로 설정합니다.

[in, out] pcchOut

형식: DWORD*

함수를 호출할 때 pszOut 버퍼의 문자 수로 설정된 값에 대한 포인터입니다. 함수가 성공적으로 반환되면 값은 실제로 버퍼에 배치된 문자 수로 설정됩니다.

ASSOCF_NOTRUNCATE 플래그가 플래그로 설정되고 pszOut에 지정된 버퍼가 너무 작으면 함수는 E_POINTER 반환하고 값은 버퍼의 필요한 크기로 설정됩니다.

pszOutNULL이면 함수는 S_FALSE 반환하고 pcchOut은 버퍼의 필요한 크기(문자)를 가리킵니다.

반환 값

형식: HRESULT

다음을 포함하여 표준 COM 오류 값을 반환합니다.

오류 의미
S_OK 성공.
E_POINTER pszOut 버퍼가 너무 작아서 전체 문자열을 보유할 수 없습니다.
S_FALSE pszOutNULL입니다. pcchOut 에는 필요한 버퍼 크기가 포함되어 있습니다.

설명

이 함수는 IQueryAssociations 인터페이스에 대한 래퍼입니다. AssocQueryString 함수는 IQueryAssociations 인터페이스를 사용하는 프로세스를 간소화하기 위한 것입니다.

항목이 선택되면 호스트는 해당 항목에 사용할 수 있는 미리 보기 처리기를 결정해야 합니다. 미리 보기 처리기는 일반적으로 파일 이름 확장명 또는 ProgID에 등록되지만 일부 미리 보기 처리기는 특정 셸 폴더 내의 항목에 대해서만 인스턴스화됩니다(MAPI 미리 보기 처리기는 MAPI Shell 폴더에서 온 모든 항목과 연결됨). 따라서 호스트는 IQueryAssociations를 사용하여 사용할 미리 보기 처리기를 결정해야 합니다. 파일 및 프로토콜 연결 함수의 작동 방식에 대한 자세한 내용은 IQueryAssociations를 참조하세요.

참고

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

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional, Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 shlwapi.h
라이브러리 Shlwapi.lib
DLL Shlwapi.dll(버전 5.0 이상)