WinCPICStartup
WinCPICStartup 함수를 사용하면 애플리케이션이 필요한 Microsoft Windows CPI-C(Common Programming Interface for Communications) 버전을 지정하고 특정 Windows CPI-C 구현의 세부 정보를 검색할 수 있습니다. 이 함수는 추가 Windows CPI-C 호출을 실행하기 전에 Windows CPI-C 구현에 등록하기 위해 애플리케이션에서 호출해야 합니다.
구문
INT WINAPI WinCPICStartup(
WORDwVersionRequired,
LPWCPICDATAlpwcpicdata);
매개 변수
wVersionRequired
필요한 Windows CPI-C 지원 버전을 지정합니다. 상위 바이트는 부 버전(수정 버전) 번호를 지정합니다. 하위 바이트는 주 버전 번호를 지정합니다.
lpwcpicdata
CPI-C 데이터 구조에 대한 포인터입니다. CPICDATA 구조체는 다음과 같이 정의됩니다.
typedef struct {
....WORD wVersion;
char szDescription[WCPICDESCRIPTION_LEN+1];
} CPICDATA, FAR * LPWCPICDATA;
WCPIDESCRIPTION은 127로 정의되며 구조체 멤버는 다음과 같습니다.
wVersion
지원되는 Windows CPI-C 버전입니다. 상위 바이트는 부 버전(수정 버전) 번호를 지정합니다. 하위 바이트는 주 버전 번호를 지정합니다.
szDescription
지원되는 CPI-C 버전을 설명하는 설명 문자열입니다.
반환 값
반환 값은 애플리케이션이 성공적으로 등록되었는지 여부와 Windows CPI-C 구현이 지정된 버전 번호를 지원할 수 있는지 여부를 지정합니다. 값이 0이면 성공적으로 등록되었습니다. 그렇지 않으면 반환 값은 다음 중 하나입니다.
WCPICSYSNOTRERADY
기본 네트워크 시스템이 네트워크 통신을 수행할 준비가 되지 않았습니다.
WCPICVERNOTSUPPORTED
요청된 Windows CPI-C 지원 버전은 이 특정 Windows CPI-C 구현에서 제공되지 않습니다.
WCPICINVALID
애플리케이션에서 지정한 Windows CPI-C 버전은 이 DLL(동적 연결 라이브러리)에서 지원되지 않습니다.
설명
Windows CPI-C 버전 1.0과 기능 차이가 있을 수 있는 향후 Windows CPI-C 구현 및 애플리케이션을 지원하기 위해 WinCPICStartup에서 협상이 진행됩니다. 애플리케이션이 사용할 수 있는 Windows CPI-C 버전을 WinCPICStartup 에 전달합니다. 이 버전이 Windows CPI-C DLL에서 지원하는 가장 낮은 버전보다 낮은 경우 DLL은 애플리케이션을 지원할 수 없으며 WinCPICStartup 호출이 실패합니다. 그러나 버전이 낮지 않으면 호출이 성공하고 DLL에서 지원하는 가장 높은 버전의 Windows CPI-C를 반환합니다. 이 버전이 애플리케이션에서 지원하는 가장 낮은 버전보다 낮은 경우 애플리케이션은 초기화에 실패하거나 시스템에서 다른 Windows CPI-C DLL을 찾으려고 시도합니다.
이 협상을 통해 Windows CPI-C DLL과 Windows CPI-C 애플리케이션 모두 다양한 Windows CPI-C 버전을 지원할 수 있습니다. 버전에 중복이 있는 경우 애플리케이션에서 DLL을 성공적으로 사용할 수 있습니다. 다음 표에서는 WinCPICStartup 이 다른 애플리케이션 및 DLL 버전과 함께 작동하는 방법을 보여 줍니다.
애플리케이션 버전 | DLL 버전 | WinCPICStartup으로 | WinCPICStartup에서 | 결과 |
---|---|---|---|---|
1.0 | 1.0 | 1.0 | 1.0 | 1.0 사용 |
1.0, 2.0 | 1.0 | 2.0 | 1.0 | 1.0 사용 |
1.0 | 1.0, 2.0 | 1.0 | 2.0 | 1.0 사용 |
1.0 | 2.0, 3.0 | 1.0 | WCPICINVALID | 실패 |
2.0, 3.0 | 1.0 | 3.0 | 1.0 | 앱 실패 |
1.0, 2.0, 3.0 | 1.0, 2.0, 3.0 | 3.0 | 3.0 | 3.0 사용 |
실제 Windows CPI-C 구현에 대한 세부 정보는 다음과 같이 정의된 WHLLDATA 구조에 설명되어 있습니다.
typedef struct tagWCPICDATA { WORD wVersion;
char szDescription[WHLLDESCRIPTION_LEN+1];
} WCPICDATA, FAR *LPWCPICDATA;
마지막 Windows CPI-C 호출을 수행한 애플리케이션은 WinCPICCleanup루틴을 호출해야 합니다.
각 Windows CPI-C 구현은 다른 Windows CPI-C 호출을 실행하기 전에 WinCPICStartup 호출을 수행해야 합니다.