NetServerTransportAddEx-Funktion (lmserver.h)
Die NetServerTransportAddEx-Funktion bindet den angegebenen Server an das Transportprotokoll. Mit dieser erweiterten Funktion kann die aufrufende Anwendung die SERVER_TRANSPORT_INFO_0, SERVER_TRANSPORT_INFO_1, SERVER_TRANSPORT_INFO_2 oder SERVER_TRANSPORT_INFO_3 Informationsebenen angeben.
Syntax
NET_API_STATUS NET_API_FUNCTION NetServerTransportAddEx(
[in] LMSTR servername,
[in] DWORD level,
[in] LPBYTE bufptr
);
Parameter
[in] servername
Ein Zeiger auf eine Zeichenfolge, die den Namen des Remoteservers angibt, auf dem die Funktion ausgeführt werden soll. Wenn dieser Parameter NULL ist, wird der lokale Computer verwendet.
[in] level
Gibt einen Wert an, der die Informationsebene der Daten angibt. Dieser Parameter kann einen der folgenden Werte annehmen.
Wert | Bedeutung |
---|---|
|
Gibt Informationen zum Transportprotokoll an, einschließlich Name, Adresse und Speicherort im Netzwerk. Der bufptr-Parameter verweist auf eine SERVER_TRANSPORT_INFO_0 Struktur. |
|
Gibt Informationen zum Transportprotokoll an, einschließlich Name, Adresse, Netzwerkstandort und Domäne. Der bufptr-Parameter verweist auf eine SERVER_TRANSPORT_INFO_1-Struktur . |
|
Gibt dieselben Informationen wie Ebene 1 an, wobei ein svti2_flags-Member hinzugefügt wird. Der bufptr-Parameter verweist auf eine SERVER_TRANSPORT_INFO_2 Struktur. |
|
Gibt dieselben Informationen wie Ebene 2 an, wobei Anmeldeinformationen hinzugefügt werden. Der bufptr-Parameter verweist auf eine SERVER_TRANSPORT_INFO_3-Struktur . |
[in] bufptr
Ein Zeiger auf den Puffer, der die Daten enthält. Das Format dieser Daten hängt vom Wert des Ebenenparameters ab.
Weitere Informationen finden Sie unter Netzwerkverwaltungsfunktionspuffer.
Rückgabewert
Wenn die Funktion erfolgreich ist, wird der Rückgabewert NERR_Success.
Wenn die Funktion fehlschlägt, kann der Rückgabewert einer der folgenden Fehlercodes sein.
Rückgabecode | Beschreibung |
---|---|
|
Der Benutzer besitzt keinen Zugriff auf die angeforderten Informationen. |
|
Im Netzwerk ist ein doppelter Name vorhanden. |
|
Der Domänenname konnte im Netzwerk nicht gefunden werden. |
|
Der für den Level-Parameter angegebene Wert ist ungültig. |
|
Ein Parameter ist ungültig.
Dieser Fehler wird zurückgegeben, wenn der Transportname oder das Element der Transportadresse im SERVER_TRANSPORT_INFO_0, SERVER_TRANSPORT_INFO_1, SERVER_TRANSPORT_INFO_2 oder SERVER_TRANSPORT_INFO_3 Struktur, auf die vom bufptr-Parameter verwiesen wird, NULL ist. Dieser Fehler wird auch zurückgegeben, wenn das Element der Transportadressenlänge im SERVER_TRANSPORT_INFO_0, SERVER_TRANSPORT_INFO_1, SERVER_TRANSPORT_INFO_2 oder SERVER_TRANSPORT_INFO_3 Struktur, auf die vom bufptr-Parameter verwiesen wird, null oder größer als MAX_PATH (definiert in der Headerdatei "Windef.h ") ist. Dieser Fehler wird auch zurückgegeben, wenn das Flags-Element der SERVER_TRANSPORT_INFO_2 oder SERVER_TRANSPORT_INFO_3 Struktur, auf die vom bufptr-Parameter verwiesen wird, einen ungültigen Wert enthält. Dieser Fehler wird auch für andere ungültige Parameter zurückgegeben. |
|
Es ist nicht genügend Arbeitsspeicher verfügbar. |
Hinweise
Nur Mitglieder der lokalen Gruppe Administratoren oder Serveroperatoren können die NetServerTransportAddEx-Funktion erfolgreich ausführen.
Wenn Sie einem Server mithilfe eines Aufrufs der NetServerTransportAddEx-Funktion ein Transportprotokoll hinzufügen, bleibt die Verbindung nach dem Neustart oder Neustart des Servers nicht erhalten.
Die NetServerComputerNameAdd-Funktion ist eine Hilfsfunktion. Es kombiniert die Features der NetServerTransportEnum-Funktion und der NetServerTransportAddEx-Funktion , sodass Sie einen emulierten Servernamen angeben können.
Unter Windows Server 2008 und Windows Vista mit Service Pack 1 (SP1) wird jeder beim Windows-Remotedateiserver (SRV) registrierte Name entweder als bereichsbezogener Name oder als nicht bereichsbezogener Name angegeben. Jede Freigabe, die dem System hinzugefügt wird, wird dann entweder an alle Nicht-Bereichsnamen oder an einen einzelnen Bereichsnamen angefügt. Anwendungen, die die Bereichsfeatures verwenden möchten, sind sowohl für die Registrierung des neuen Namens als bereichsbezogenen Endpunkt als auch für die Erstellung der Freigaben mit einem entsprechenden Bereich verantwortlich. Auf diese Weise sind legacy-Verwendungen der Funktionen Netzwerkverwaltung und Netzwerkfreigabeverwaltung in keiner Weise betroffen, da freigaben und Namen weiterhin als nicht bereichsbezogene Namen registriert werden.
Ein bereichsbezogener Endpunkt wird erstellt, indem die NetServerTransportAddEx-Funktion aufgerufen wird, wobei der Levelparameter auf 2 festgelegt ist und der bufptr-Parameter auf eine SERVER_TRANSPORT_INFO_2-Struktur verweist, wobei der SVTI2_SCOPED_NAME Bitwert in svti2_flags Member festgelegt ist. Ein bereichsbezogener Endpunkt wird auch erstellt, indem die NetServerTransportAddEx-Funktion aufgerufen wird, wobei der Levelparameter auf 3 festgelegt ist und der bufptr-Parameter auf eine SERVER_TRANSPORT_INFO_3-Struktur verweist, wobei der SVTI2_SCOPED_NAME Bitwert in svti3_flags Member festgelegt ist.
Wenn der SVTI2_SCOPED_NAME Bitwert für einen Transport festgelegt ist, können Freigaben mit einem entsprechenden Servernamen (dem shi503_servername Member der SHARE_INFO_503-Struktur ) auf bereichsbezogene Weise mithilfe der NetShareAdd-Funktion hinzugefügt werden. Wenn kein Transport mit dem SVTI2_SCOPED_NAME Bitwert und dem in shi503_servername Member angegebenen Namen registriert ist, ist die freigabebezogene Add nicht erfolgreich.
Die NetShareAdd-Funktion wird verwendet, um eine bereichsbezogene Freigabe auf einem Remoteserver hinzuzufügen, der im servername-Parameter angegeben ist. Der remote Server, der im shi503_servername Member des SHARE_INFO_503 angegeben ist, der im bufptr-Parameter übergeben wurde, muss an ein Transportprotokoll gebunden worden sein, wobei die NetServerTransportAddEx-Funktion als bereichsbezogener Endpunkt verwendet wurde. Das SVTI2_SCOPED_NAME-Flag muss im shi503_servername Member der SERVER_TRANSPORT_INFO_2 oder SERVER_TRANSPORT_INFO_3 Struktur für das Transportprotokoll angegeben worden sein. Die NetShareDelEx-Funktion wird verwendet, um eine bereichsbezogene Freigabe zu löschen. Die Funktionen NetShareGetInfo und NetShareSetInfo dienen zum Abrufen und Festlegen von Informationen zu einer bereichsbezogenen Freigabe.
Bereichsbezogene Endpunkte werden in der Regel vom Clusternamespace verwendet.
Anforderungen
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | lmserver.h (lm.h einschließen) |
Bibliothek | Netapi32.lib |
DLL | Netapi32.dll |