NetShareDel 函式 (lmshare.h)
從伺服器的共用資源清單中刪除共用名稱稱,並中斷與共用資源的所有連線。
擴充函式 NetShareDelEx 可讓呼叫端指定 SHARE_INFO_0、 SHARE_INFO_1、 SHARE_INFO_2、 SHARE_INFO_502或 SHARE_INFO_503 結構。
語法
NET_API_STATUS NET_API_FUNCTION NetShareDel(
[in] LMSTR servername,
[in] LMSTR netname,
DWORD reserved
);
參數
[in] servername
字串的指標,指定函式執行所在遠端伺服器的 DNS 或 NetBIOS 名稱。 如果此參數為 Null,則會使用本機電腦。
如果已定義 _WIN32_WINNT 或 FORCE_UNICODE ,則此字串為 Unicode。
[in] netname
字串的指標,指定要刪除的共用名稱稱。
如果已定義 _WIN32_WINNT 或 FORCE_UNICODE ,則此字串為 Unicode。
reserved
保留的 必須是零。
傳回值
如果函式成功,傳回值會NERR_Success。
如果函式失敗,傳回值可以是下列其中一個錯誤碼。
傳回碼 | 描述 |
---|---|
|
使用者無法存取要求的資訊。 |
|
指定的參數無效。 |
|
記憶體不足。 |
|
共用名稱稱不存在。 |
備註
此函式僅適用于伺服器訊息區 (SMB) 共用。 針對其他類型的共用,例如分散式檔案系統 (DFS) 或 WebDAV 共用,請使用支援所有類型的共用的 Windows 網路 (WNet) 函式。
只有系統管理員、伺服器操作員或 Power Users 本機群組的成員,或具有伺服器操作員群組成員資格的成員,才能成功刪除具有 NetShareDel 函式呼叫的檔案共用。 列印操作員可以刪除印表機共用。
如果您是針對 Active Directory 進行程式設計,您可以呼叫特定 Active Directory 服務介面 (ADSI) 方法來達成相同的功能,方法是呼叫網路管理共用函式。 如需詳細資訊,請參閱 IADsFileShare。
範例
下列程式碼範例示範如何使用 對 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;
}
需求
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | lmshare.h (包括 Lm.h) |
程式庫 | Netapi32.lib |
Dll | Netapi32.dll |