ITPhone::EnumeratePreferredAddresses-Methode (tapi3if.h)
Die EnumeratePreferredAddresses-Methode listet die bevorzugten Adressen für das Phone-Objekt auf. Die Anwendung muss itPhone::Open nicht aufrufen, bevor diese Methode ausgeführt wird.
Diese Methode ist für C/C++-Anwendungen vorgesehen. Visual Basic- und Skriptanwendungen müssen die get_Addresses-Methode verwenden.
Syntax
HRESULT EnumeratePreferredAddresses(
[out] IEnumAddress **ppEnumAddress
);
Parameter
[out] ppEnumAddress
Zeiger auf einen Speicherort, an dem die Methode bei Erfolg einen Zeiger auf ein Enumerationsobjekt platziert, das die Liste der Adressen enthält. Weitere Informationen finden Sie im folgenden Abschnitt "Hinweise".
Rückgabewert
Diese Methode kann einen dieser Werte zurückgeben.
Wert | Bedeutung |
---|---|
|
Methode war erfolgreich. |
|
Der ppEnumAddress-Parameter ist kein gültiger Zeiger. |
|
Es ist nicht genügend Arbeitsspeicher vorhanden, um das Enumerationsobjekt zuzuordnen. |
Hinweise
Wenn im System keine verwendbaren Adressen vorhanden sind, erzeugt diese Methode eine leere Enumeration und gibt S_OK zurück.
Ein Telefongerät deklariert sich selbst als bevorzugt gegenüber einer Adresse oder einem Satz von Adressen, indem es Adressen-/Zeilen-IDs mithilfe der phoneGetID-Funktion TAPI 2.x mit der Geräteklasse tapi/line zurückgibt.
Obwohl die phoneGetID-Funktion das Handle für ein geöffnetes Telefongerät erfordert, muss die Anwendung vor dem Aufruf von EnumeratePreferredAddresses nicht die ITPhone::Open-Methode aufrufen. Dies liegt daran, dass die Implementierung des phone-Objekts das Telefon öffnen und phoneGetID während der TAPI-Initialisierung oder beim Anzeigen eines neuen Telefonobjekts aufrufen kann.
TAPI ruft die AddRef-Methode auf der IEnumAddress-Schnittstelle auf, die von ITPhone::EnumeratePreferredAddresses zurückgegeben wird. Die Anwendung muss Release auf der IEnumAddress-Schnittstelle aufrufen, um zugeordnete Ressourcen freizugeben.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | tapi3if.h (Tapi3.h einschließen) |
Bibliothek | Uuid.lib |
DLL | Tapi3.dll |