DirectPlay DirectPlay C/C++ 레퍼런스 인터페이스 IDirectPlay8LobbyClient EnumLocalPrograms [목차열람] [주소복사] [슬롯비우기] |
Microsoft DirectX 9.0 |
시스템에 등록되어 있는 로비 애플리케이션을 열거한다.
구문
HRESULT EnumLocalPrograms(
GUID *const pGuidApplication, BYTE *const pEnumData, DWORD *const pdwEnumData, DWORD *const pdwItems, const DWORD dwFlags );
파라미터
- pGuidApplication
- [in] 열거하는 로비 애플리케이션을 지정하는 글로벌 일의 식별자 (GUID) 형의 변수의 포인터. 이 파라미터는 옵션이다. NULL 를 건네주면 이용 가능한 모든 로비 애플리케이션이 열거된다.
- pEnumData
- [out] 로비 애플리케이션의 기술을 저장 하는 BYTE 형의 변수의 포인터.
- pdwEnumData
- [in] pEnumData 버퍼에 보관 유지되는 바이트수를 지정하는 DWORD 형의 변수의 포인터. pEnumData 의 버퍼가 너무 작은 경우, 이 메서드는 DPNERR_BUFFERTOOSMALL 를 돌려주어, 필요한 버퍼의 사이즈를 이 파라미터로 설정한다.
- pdwItems
- [out] pEnumData 버퍼의 DPL_APPLICATION_INFO 구조체의 수를 보관 유지하는 DWORD 형의 변수의 포인터. 메서드가 성공했을 경우에만, 이 파라미터에 값이 저장 된다.
- dwFlags
- [in] 예약이 끝난 상태. 0 이 아니면 안된다.
반환값
성공했을 경우는 S_OK 를 돌려주어, 실패했을 경우는 다음의 몇개의 에러값을 돌려준다.
DPNERR_BUFFERTOOSMALL 지정된 버퍼가 너무 작아, 요구된 데이터를 저장 할 수 없다. DPNERR_DOESNOTEXIST 요구된 요소는 주소의 일부에서는 없다. DPNERR_INVALIDFLAGS 이 메서드에 건네진 플래그는 무효이다. DPNERR_INVALIDPARAM 메서드에 건네진 1 개 이상의 파라미터가 무효이다.
주의
보통, 이 메서드는 2 회 호출된다. 1 번째는, 필요한 버퍼의 사이즈를 얻어오기 위해 호출된다. 2 번째는, 올바른 버퍼 사이즈를 사용해 호출된다.