lineAddProviderA-Funktion (tapi.h)

Die lineAddProvider Funktion installiert einen neuen Telefoniedienstanbieter in das Telefoniesystem.

Syntax

LONG lineAddProviderA(
  LPCSTR  lpszProviderFilename,
  HWND    hwndOwner,
  LPDWORD lpdwPermanentProviderID
);

Parameter

lpszProviderFilename

Zeiger auf eine

null-terminated-Zeichenfolge, die den Pfad des hinzuzufügenden Dienstanbieters enthält.

hwndOwner

Handle to a window in which any dialog boxes that need to be displayed as part of the installation process (for example, by the service provider's TSPI_providerInstall function) would be attached. Kann NULL- sein, um anzugeben, dass jedes Fenster, das während der Funktion erstellt wurde, kein Besitzerfenster aufweisen sollte.

lpdwPermanentProviderID

Zeiger auf eine Variable, die den dauerhaften Anbieterbezeichner des neu installierten Dienstanbieters empfängt.

Rückgabewert

Gibt Null zurück, wenn die Anforderung erfolgreich ist oder eine negative Fehlernummer auftritt, wenn ein Fehler auftritt. Mögliche Rückgabewerte sind:

LINEERR_INIFILECORRUPT, LINEERR_INVALPARAM, LINEERR_INVALPOINTER, LINEERR_NOMEM, LINEERR_NOMULTIPLEINSTANCE, LINEERR_OPERATIONFAILED.

Bemerkungen

Während dieses Funktionsaufrufs überprüft TAPI, ob er auf den Dienstanbieter zugreifen kann, indem er seine TSPI_providerInstall-Funktion aufruft; Wenn dies nicht erfolgreich ist (wenn die DLL oder Funktion nicht gefunden werden kann oder wenn TSPI_providerInstall einen Fehler zurückgibt), schlägt die Funktion fehl, und der Anbieter wird nicht zum Telefoniesystem hinzugefügt. Wenn dies erfolgreich ist und das Telefoniesystem aktiv ist (mindestens eine Anwendung hat lineInitialize oder lineInitializeExaufgerufen), versucht TAPI nicht, den neu hinzugefügten Dienstanbieter zu starten. Um den neuen Dienstanbieter zu aktivieren, gibt TAPI stattdessen eine Meldung aus, um Windows neu zu starten. Wenn die Aktivierung erfolgreich ist, werden Anwendungen über alle neuen Geräte informiert, die mithilfe von LINE_CREATE oder PHONE_CREATE Nachrichten erstellt wurden, oder von einer LINE_LINEDEVSTATE Nachricht, die eine Erneute Initialisierung anfordert (wenn die Anwendung die CREATE-Nachrichten nicht unterstützt).

Diese Funktion kopiert keine Dateien – weder die Dienstanbieter-DLL selbst noch unterstützende Dateien; Die Anwendung, die das Hinzufügen des Anbieters verwaltet, muss sicherstellen, dass der Anbieter in einem Verzeichnis installiert ist, in dem er von TAPI gefunden werden kann (z. B. \WINDOWS, \WINDOWS\SYSTEM oder an anderer Stelle auf dem Pfad).

Anmerkung

Der header tapi.h definiert lineAddProvider als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
Zielplattform- Fenster
Header- tapi.h
Library Tapi32.lib
DLL- Tapi32.dll

Siehe auch

LINE_CREATE

LINE_LINEDEVSTATE

PHONE_CREATE

Ergänzende Line-Service-Funktionen

TAPI 2.2 Referenzübersicht

lineInitialize-

lineInitializeEx-