다음을 통해 공유


WSDCreateDeviceProxy 함수(wsdclient.h)

디바이스 프록시를 만들고 IWSDDeviceProxy 인터페이스에 대한 포인터를 반환합니다.

구문

HRESULT WSDCreateDeviceProxy(
  [in]  LPCWSTR         pszDeviceId,
  [in]  LPCWSTR         pszLocalId,
  [in]  IWSDXMLContext  *pContext,
  [out] IWSDDeviceProxy **ppDeviceProxy
);

매개 변수

[in] pszDeviceId

디바이스의 논리적 또는 물리적 주소입니다. 논리적 주소는 형식 urn:uuid:{guid}입니다. 실제 주소는 http 또는 https에 접두사로 지정된 URI입니다. 이 주소가 https 접두사인 URI인 경우 프록시는 SSL/TLS 프로토콜을 사용합니다.

디바이스 주소에 @ 문자 접두사를 사용할 수 있습니다. pszDeviceId가 @로 시작하면 이 함수는 디바이스 프록시를 만들 때 디바이스 메타데이터를 검색하지 않습니다.

[in] pszLocalId

프록시를 식별하고 이벤트 싱크 엔드포인트 역할을 하는 데 사용되는 클라이언트의 논리적 또는 물리적 주소입니다. 논리적 주소는 형식 urn:uuid:{guid}입니다.

클라이언트가 보안 채널을 사용하여 이벤트를 수신하는 경우 주소는 https 접두사인 URI입니다. 이 포트는 WSDAPI와의 보안 연결을 위해 예약되어 있으므로 이 URI는 포트 5358을 지정해야 합니다. WSDCreateDeviceProxyAdvanced를 호출하기 전에 포트를 SSL 서버 인증서로 구성해야 합니다. 포트 구성에 대한 자세한 내용은 HttpSetServiceConfiguration을 참조하세요.

[in] pContext

사용자 지정 메시지 형식 또는 네임스페이스를 정의하는 IWSDXMLContext 개체입니다.

NULL인 경우 기본 제공 메시지 형식 및 네임스페이스를 나타내는 기본 컨텍스트가 사용됩니다.

[out] ppDeviceProxy

클라이언트 애플리케이션 및 미들웨어에 대한 원격 WSD 디바이스를 나타내는 데 사용하는 IWSDDeviceProxy 개체에 대한 포인터입니다.

반환 값

가능한 반환 값에는 다음이 포함되지만 이에 국한되지는 않습니다.

반환 코드 Description
S_OK
메서드가 성공적으로 완료되었습니다.
E_INVALIDARG
pszDeviceIdNULL, pszLocalIdNULL, pszDeviceId 의 문자 길이는 WSD_MAX_TEXT_LENGTH(8192)를 초과하거나 pszLocalId 의 문자 길이가 WSD_MAX_TEXT_LENGTH(8192)를 초과합니다.
E_POINTER
ppDeviceProxyNULL입니다.
E_OUTOFMEMORY
메모리가 부족하여 작업을 완료할 수 없습니다.

설명

WSDCreateDeviceProxy 함수는 IWSDDeviceProxy 개체의 instance 초기화하는 IWSDDeviceProxy::Init 메서드를 호출합니다.

pszDeviceId 매개 변수가 @ 문자로 시작되지 않는 한 이 함수는 디바이스 메타데이터도 검색합니다. 디바이스 프록시를 만든 후 디바이스 메타데이터를 검색하려면 반환된 IWSDDeviceProxy 개체에서 IWSDDeviceProxy::BeginGetMetadataIWSDDeviceProxy::EndGetMetadata를 호출합니다.

WSDCreateDeviceProxy 함수 호출 문제 해결에 대한 자세한 내용은 WSDAPI 애플리케이션 문제 해결을 참조하세요.

요구 사항

   
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 wsdclient.h(Wsdapi.h 포함)
라이브러리 Wsdapi.lib
DLL Wsdapi.dll

참고 항목

WSDAPI 애플리케이션 문제 해결