Funzione NetShareDel (lmshare.h)
Elimina un nome di condivisione dall'elenco delle risorse condivise di un server, disconnettendo tutte le connessioni alla risorsa condivisa.
La funzione estesa NetShareDelEx consente al chiamante di specificare una struttura SHARE_INFO_0,SHARE_INFO_1, SHARE_INFO_2, SHARE_INFO_502 o SHARE_INFO_503.
Sintassi
NET_API_STATUS NET_API_FUNCTION NetShareDel(
[in] LMSTR servername,
[in] LMSTR netname,
DWORD reserved
);
Parametri
[in] servername
Puntatore a una stringa che specifica il nome DNS o NetBIOS del server remoto in cui eseguire la funzione. Se questo parametro è NULL, viene usato il computer locale.
Questa stringa è Unicode se è definita _WIN32_WINNT o FORCE_UNICODE .
[in] netname
Puntatore a una stringa che specifica il nome della condivisione da eliminare.
Questa stringa è Unicode se è definita _WIN32_WINNT o FORCE_UNICODE .
reserved
Riservato, deve essere zero.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è NERR_Success.
Se la funzione ha esito negativo, il valore restituito può essere uno dei codici di errore seguenti.
Codice restituito | Descrizione |
---|---|
|
L'utente non ha accesso alle informazioni richieste. |
|
Il parametro specificato non è valido. |
|
Memoria insufficiente disponibile. |
|
Il nome della condivisione non esiste. |
Commenti
Questa funzione si applica solo alle condivisioni SMB (Server Message Block). Per altri tipi di condivisioni, ad esempio File System distribuito (DFS) o condivisioni WebDAV, usare funzioni di Rete Windows (WNet), che supportano tutti i tipi di condivisioni.
Solo i membri del gruppo locale Administrators, Server Operator o Power Users o quelli con appartenenza al gruppo di operatori server possono eliminare correttamente le condivisioni file con una chiamata alla funzione NetShareDel . L'operatore di stampa può eliminare condivisioni stampanti.
Se si sta programmando per Active Directory, è possibile chiamare determinati metodi di Active Directory Service Interface (ADSI) per ottenere la stessa funzionalità che è possibile ottenere chiamando le funzioni di condivisione di gestione di rete. Per altre informazioni, vedere IADsFileShare.
Esempio
Nell'esempio di codice seguente viene illustrato come eliminare una condivisione usando una chiamata alla funzione NetShareDel .
#ifndef UNICODE
#define UNICODE
#endif
#include <windows.h>
#include <stdio.h>
#include <lm.h>
#pragma comment(lib, "Netapi32.lib")
void wmain( int argc, TCHAR *argv[ ])
{
NET_API_STATUS res;
if(argc<3)
printf("Usage: NetShareDel server share\n");
else
{
//
// Call the NetShareDel function to delete the share.
//
res=NetShareDel(argv[1], argv[2], 0);
//
// Display the result of the call.
//
if(res==0)
printf("Share Removed.\n");
else
printf("Error: %u\n", res);
}
return;
}
Requisiti
Client minimo supportato | Windows XP [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | lmshare.h (includere Lm.h) |
Libreria | Netapi32.lib |
DLL | Netapi32.dll |
Vedi anche
Funzioni di gestione della rete