WinSLIStartup
WinSLIStartup 함수를 사용하면 SLI(세션 수준 인터페이스) 동사를 사용하는 애플리케이션이 필요한 Microsoft Windows LUA(논리 단위 애플리케이션) 버전을 지정하고 특정 Windows LUA 구현의 세부 정보를 검색할 수 있습니다. 이 함수는 추가 Windows LUA 호출을 실행하기 전에 Windows LUA 구현에 등록하려면 애플리케이션에서 호출해야 합니다.
구문
int WINAPI WinSLIStartup(
WORD wVersionRequired,
LUADATA FAR *lpLuaData
);
매개 변수
wVersionRequired
필요한 Windows LUA 지원 버전을 지정합니다. 상위 바이트는 부 버전(수정 버전) 번호를 지정합니다. 하위 바이트는 주 버전 번호를 지정합니다.
lpLuaData
반환된 버전 번호 정보를 포함하는 LUADATA 구조체에 대한 포인터입니다.
반환 값
반환 코드는 애플리케이션이 성공적으로 등록되었는지 여부와 Windows LUA 구현이 지정된 버전 번호를 지원할 수 있는지 여부를 지정합니다. 값이 0이면 성공적으로 등록되었으며 지정된 버전을 지원될 수 있습니다. 그렇지 않으면 반환 코드는 다음 중 하나입니다.
WLUASYSNOTREADY
기본 네트워크 시스템은 네트워크 통신을 수행할 준비가 되지 않았습니다.
WLUAVERNOTSUPPORTED
요청된 Windows LUA 지원 버전은 이 특정 Windows LUA 구현에서 제공되지 않습니다.
WLUAINVALID
애플리케이션에서 지정한 Windows LUA 버전은 이 DLL(동적 연결 라이브러리)에서 지원되지 않습니다.
WLUAFAILURE
Windows LUA DLL을 초기화하는 동안 오류가 발생했습니다. 이는 일반적으로 운영 체제 호출이 실패했기 때문에 발생합니다.
WLUAINITREJECT
WinSLIStartup 이 여러 번 호출되었습니다.
설명
기능 차이가 있을 수 있는 향후 Windows LUA 구현 및 애플리케이션을 지원하기 위해 WinSLIStartup에서 협상이 진행됩니다. 애플리케이션은 사용할 수 있는 Windows LUA 버전을 WinSLIStartup 에 전달합니다. 이 버전이 Windows LUA DLL에서 지원하는 가장 낮은 버전보다 낮은 경우 DLL은 애플리케이션을 지원할 수 없으며 WinSLIStartup이 실패합니다. 그러나 버전이 낮지 않으면 호출이 성공하고 DLL에서 지원하는 가장 높은 버전의 Windows LUA를 반환합니다. 이 버전이 애플리케이션에서 지원하는 가장 낮은 버전보다 낮으면 애플리케이션이 초기화에 실패하거나 시스템에서 다른 Windows LUA DLL을 찾으려고 시도합니다.
이 협상을 통해 Windows LUA DLL과 Windows LUA 애플리케이션이 모두 다양한 Windows LUA 버전을 지원할 수 있습니다. 버전이 겹치는 경우 애플리케이션에서 DLL을 성공적으로 사용할 수 있습니다. 다음 표에서는 WinSLIStartup 이 다른 애플리케이션 및 DLL 버전과 함께 작동하는 방법을 보여 줍니다.
앱 버전 | LUA DLL 버전 | 대상 WinSLIStartup |
시작 WinSLIStartup |
결과 |
---|---|---|---|---|
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 | WLUAINVALID | 실패 |
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 사용 |
참고
SLI 동사를 사용하는 애플리케이션은 다른 LUA 명령을 실행하기 전에 WinSLIStartup 을 호출해야 합니다. 그러나 WinSLIStartup 은 애플리케이션당 한 번만 호출해야 합니다. 이 호출이 여러 번 호출되면 후속 호출이 거부됩니다.
실제 LUA 구현에 대한 세부 정보는 다음과 같이 정의된 WLUADATA 구조에 설명되어 있습니다.
typedef struct { WORD wVersion;
char szDescription[WLUADESCRIPTION_LEN+1];
} LUADATA;
마지막 Windows LUA 호출을 수행한 후 애플리케이션은 WinSLICleanup 루틴을 호출해야 합니다.
SLI 동사를 사용하는 각 LUA 애플리케이션은 다른 LUA 호출을 실행하기 전에 WinSLIStartup 호출을 수행해야 합니다.