phoneInitialize 함수(tapi.h)
phoneInitialize 함수는 사용되지 않습니다. TAPI 버전 1.3 및 1.4를 사용하는 애플리케이션과의 이전 버전과의 호환성을 위해 Tapi.dll 계속 내보내고 Tapi32.dll.
TAPI 버전 2.0 이상을 사용하는 애플리케이션은 phoneInitializeEx 를 대신 사용해야 합니다.
TAPI 버전 1.4 이하의 경우: phoneInitialize 함수는 전화 통신 API에서 전화 함수의 후속 사용을 위해 애플리케이션의 TAPI 사용을 초기화합니다. 애플리케이션의 지정된 알림 메커니즘을 등록하고 애플리케이션에서 사용할 수 있는 전화 디바이스 수를 반환합니다.
구문
LONG phoneInitialize(
LPHPHONEAPP lphPhoneApp,
HINSTANCE hInstance,
PHONECALLBACK lpfnCallback,
LPCSTR lpszAppName,
LPDWORD lpdwNumDevs
);
매개 변수
lphPhoneApp
TAPI에 대한 애플리케이션의 사용 핸들로 채워진 위치에 대한 포인터입니다.
hInstance
클라이언트 애플리케이션 또는 DLL의 인스턴스 핸들입니다.
lpfnCallback
전화 디바이스에서 상태 및 이벤트를 확인하기 위해 호출되는 콜백 함수의 주소입니다.
lpszAppName
표시 가능한 문자가 포함된 null로 끝나는 문자열에 대한 포인터입니다. 이 매개 변수가 NULL이 아닌 경우 애플리케이션에서 제공하는 애플리케이션 이름이 포함됩니다. 이 이름은 전화 장치의 현재 소유자인 애플리케이션을 사용자에게 친숙한 방식으로 나타내기 위해 PHONESTATUS 구조에 제공됩니다. 이 정보는 로깅 및 상태 보고 목적에 유용할 수 있습니다. lpszAppName이 NULL이면 애플리케이션의 파일 이름이 대신 사용됩니다.
lpdwNumDevs
DWORD에 대한 포인터입니다. 이 위치는 애플리케이션에서 사용할 수 있는 전화 디바이스 수와 함께 로드됩니다.
반환 값
요청이 성공하면 0을 반환하고 오류가 발생하면 음수 오류 번호를 반환합니다. 가능한 반환 값은 다음과 같습니다.
PHONEERR_INVALAPPNAME, PHONEERR_INIFILECORRUPT, PHONEERR_INVALPOINTER, PHONEERR_NOMEM, PHONEERR_OPERATIONFAILED, PHONEERR_REINIT, PHONEERR_RESOURCEUNAVAIL, PHONEERR_NODEVICE, PHONEERR_NODRIVER, PHONEERR_INVALPARAM
설명
애플리케이션은 0에서 dwNumDevs 에서 1을 뺀 범위의 전화 장치 식별자를 사용하여 개별 전화 디바이스를 참조할 수 있습니다. 애플리케이션은 이러한 휴대폰 디바이스가 먼저 phoneGetDevCaps 함수를 사용하여 디바이스 기능을 쿼리하지 않고 보조 전화 통신 하위 집합에 지정된 것 이상의 기능을 사용할 수 있다고 가정해서는 안 됩니다.
애플리케이션은 이후에 휴대폰을 열지 않고 phoneInitialize 를 호출해서는 안 됩니다(적어도 모니터링을 위해). 애플리케이션이 모니터링하지 않고 디바이스를 사용하지 않는 경우 TAPI에서 할당한 메모리 리소스가 불필요한 경우 해제될 수 있도록 phoneShutdown 을 호출해야 하며, TAPI 자체는 필요하지 않은 동안 메모리에서 언로드될 수 있습니다.
phoneShutdown을 수행하는 또 다른 이유는 사용자가 디바이스 구성을 변경(줄 또는 휴대폰을 추가 또는 제거)하는 경우 TAPI가 당시 열려 있는 줄 또는 전화 핸들이 열려 있는 애플리케이션에 알릴 방법이 없기 때문입니다. 재구성이 수행되어 PHONESTATE_REINIT 메시지가 전송된 후에는 모든 애플리케이션이 phoneShutdown을 수행할 때까지 애플리케이션이 디바이스를 열 수 없습니다.
서비스 공급자가 제대로 초기화하지 못하면 phoneInitialize 함수가 실패하고 서비스 공급자가 나타내는 오류를 반환합니다. PHONEERR_INVALPARAM 오류 값이 반환되면 지정된 hInstance 매개 변수가 잘못되었습니다.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | Windows |
헤더 | tapi.h |
라이브러리 | Tapi32.lib |
DLL | Tapi32.dll |