애플리케이션에서 TAPI의 30개 추가 전화 기능을 사용하려면 TAPI에 대한 연결이 필요하며 이를 통해 메시지를 받을 수 있습니다. 애플리케이션은 phoneInitializeEx 함수를 사용하여 이 연결을 설정합니다. 이 함수에서 애플리케이션은 TAPI가 휴대폰 상태의 변경 내용과 전화 기능의 비동기 완료를 애플리케이션에 알리는 알림 메커니즘을 지정합니다.
phoneInitializeEx 함수는 애플리케이션에 애플리케이션 핸들및 전화 장치 수라는 두 가지 정보를 반환합니다. 애플리케이션 핸들은 애플리케이션의 TAPI 사용을 나타냅니다. 이 핸들은 지정된 전화 핸들에서 파생되므로 전화 핸들을 사용하는 TAPI 함수에는 애플리케이션 핸들이 필요하지 않습니다.
phoneInitializeEx 반환된 두 번째 정보는 TAPI에서 사용할 수 있는 전화 장치 수입니다. 전화 디바이스는 디바이스 식별자(디바이스 ID)로 식별됩니다. 유효한 디바이스 식별자는 0부터 전화 장치 수에서 1을 뺀 수까지 다양합니다. 예를 들어 phoneInitializeEx 시스템에 두 개의 전화 디바이스가 있다고 보고하는 경우 유효한 전화 장치 식별자는 0과 1입니다. 애플리케이션이 TAPI의 전화 기능을 사용하여 완료되면 phoneShutdown호출하여 애플리케이션 핸들을 전달하여 TAPI 사용을 종료합니다. 이를 통해 TAPI는 애플리케이션에 할당된 모든 리소스를 해제할 수 있습니다.
애플리케이션은 이후에 휴대폰을 열지 않고 phoneInitializeEx호출해서는 안 됩니다(적어도 모니터링용). 애플리케이션이 모니터링하지 않고 디바이스를 사용하지 않는 경우 TAPI 동적 연결 라이브러리에서 할당한 메모리 리소스를 불필요한 경우 해제할 수 있도록 phoneShutdown 호출해야 하며, 필요 없는 동안 라이브러리 자체를 메모리에서 언로드할 수 있습니다.
phoneInitializeEx 및 phoneShutdown은 동기적으로 작동할 있습니다. 즉, 이러한 함수는 성공 또는 실패 표시를 반환하고 비동기 요청 식별자를 반환하지 않습니다.