WsStartWriterCanonicalization 함수(webservices.h)
지정된 XML 작성기에서 정식화를 시작합니다.
구문
HRESULT WsStartWriterCanonicalization(
[in] WS_XML_WRITER *writer,
[in] WS_WRITE_CALLBACK writeCallback,
[in] void *writeCallbackState,
const WS_XML_CANONICALIZATION_PROPERTY *properties,
[in] ULONG propertyCount,
[in, optional] WS_ERROR *error
);
매개 변수
[in] writer
정식화를 시작할 XML 작성기입니다.
[in] writeCallback
생성될 때 정식 바이트를 작성하기 위해 호출할 콜백입니다. 이 콜백은 항상 동기적으로 호출됩니다.
[in] writeCallbackState
WS_WRITE_CALLBACK 호출할 때 전달되어야 하는 호출자 정의 상태입니다.
properties
정식화를 수행하는 방법을 제어하는 선택적 속성의 배열입니다. WS_XML_CANONICALIZATION_PROPERTY 참조하세요.
[in] propertyCount
속성 수입니다.
[in, optional] error
함수가 실패할 경우 추가 오류 정보를 저장할 위치를 지정합니다.
반환 값
이 함수는 이러한 값 중 하나를 반환할 수 있습니다.
반환 코드 | 설명 |
---|---|
|
하나 이상의 인수가 잘못되었습니다. |
|
개체의 현재 상태로 인해 작업이 허용되지 않습니다. |
|
입력 데이터가 예상 형식이 아니거나 예상 값이 없습니다. |
설명
정식화의 사용 패턴은 다음과 같습니다.
- WsStartWriterCanonicalization을 호출합니다.
- 정식화할 xml을 씁니다.
- WsEndWriterCanonicalization을 호출합니다.
WsEndWriterCanonicalization 은 WsStartWriterCanonicalization 이 호출된 것과 동일한 깊이에서 호출되어야 합니다. 다른 기록기 API는 WsStartWriterCanonicalization 이 호출된 위치보다 낮은 깊이로 이동하는 경우 오류를 반환합니다.
일치하는 WsStartWriterCanonicalization과 WsEndWriterCanonicalization 호출 쌍 간에 기록기에서 WsMoveWriter 또는 WsSetWriterPosition을 호출하는 것은 잘못된 작업입니다.
이 API에 대한 호출은 중첩될 수 없습니다. 따라서 다음 WsStartWriterCanonicalization 호출 전에 WsStartWriterCanonicalization을 호출한 다음 WsEndWriterCanonicalization을 호출해야 합니다.
WS_XML_CANONICALIZATION_ALGORITHM 지정하지 않으면 WS_EXCLUSIVE_XML_CANONICALIZATION_ALGORITHM 사용됩니다.
WS_INCLUSIVE_XML_CANONICALIZATION_ALGORITHM 및 WS_INCLUSIVE_WITH_COMMENTS_XML_CANONICALIZATION_ALGORITHM 알고리즘은 전체 xml 문서에서만 사용할 수 있습니다. 이러한 알고리즘을 사용하여 WsStartWriterCanonicalization을 호출할 때 작성기는 WS_XML_NODE_TYPE_BOF 위치해야 합니다.
요구 사항
지원되는 최소 클라이언트 | Windows 7 [데스크톱 앱 | UWP 앱] |
지원되는 최소 서버 | Windows Server 2008 R2 [데스크톱 앱 | UWP 앱] |
대상 플랫폼 | Windows |
헤더 | webservices.h |
라이브러리 | WebServices.lib |
DLL | WebServices.dll |