删除分布式文件系统 (DFS) 链接或 DFS 命名空间中 DFS 链接的特定链接目标。 删除特定链接目标时,如果删除链接的最后一个链接目标,则删除链接本身。
语法
NET_API_STATUS NET_API_FUNCTION NetDfsRemove(
[in] LPWSTR DfsEntryPath,
[in, optional] LPWSTR ServerName,
[in, optional] LPWSTR ShareName
);
parameters
[in] DfsEntryPath
指向指定通用命名约定 (UNC) DFS 链接路径的字符串的指针。
字符串可以是两种形式之一。 第一种形式如下所示:
\\ ShareName\DfsName\link_path
其中 ,ShareName 是承载独立 DFS 命名空间的根目标服务器的名称; DfsName 是 DFS 命名空间的名称; 和 link_path 是 DFS 链接。
第二种形式如下:
\\ DomainName\DomDfsname\link_path
其中 ,DomainName 是托管基于域的 DFS 命名空间的域的名称; DomDfsname 是 DFS 命名空间的名称; 和 link_path 是 DFS 链接。
此参数是必需的。
[in, optional] ServerName
指向指定链接目标的服务器名称的字符串的指针。 有关更多信息,请参见下面的“备注”部分。 如果要删除链接和所有链接目标,请将此参数设置为 NULL 。
[in, optional] ShareName
指向指定链接目标的共享名称的字符串的指针。 如果要删除链接和所有链接目标,请将此参数设置为 NULL 。
返回值
如果函数成功,则返回值 NERR_Success。
如果函数失败,则返回值为系统错误代码。 有关错误代码的列表,请参阅 系统错误代码。
注解
调用方必须在 DFS 服务器上具有管理员权限。 有关调用需要管理员权限的函数的详细信息,请参阅 使用特殊特权运行。
调用 NetDfsRemove 以从链接中删除目标时,必须在 ServerName 参数中指定与创建链接时指定的相同目标服务器名称。 例如,如果在将目标添加到链接时指定了目标服务器的 DNS 名称,则必须在删除链接时指定相同的 DNS 名称。 不能指定 NetBIOS 名称。
示例
以下代码示例演示如何使用对 NetDfsRemove 函数的调用从 DFS 链接中删除目标。
#include <windows.h>
#include <lm.h>
#include <lmdfs.h>
#include <stdio.h>
#pragma comment(lib, "Netapi32.lib")
void wmain(int argc, wchar_t *argv[])
{
DWORD res;
//
// All parameters are required.
//
if (argc < 4)
wprintf(L"Syntax: %s DfsEntryPath ServerName ShareName\n", argv[0]);
else
{
//
// Call the NetDfsRemove function
// to remove the DFS link.
//
res = NetDfsRemove(argv[1], argv[2], argv[3]);
//
// Display the result of the call.
//
if(res == 0)
printf("Removed DFS link\n");
else
printf("Error: %u\n", res);
}
return;
}
要求
| 最低受支持的客户端 | Windows Vista |
| 最低受支持的服务器 | Windows Server 2008 |
| 目标平台 | Windows |
| 标头 | lmdfs.h (包括 LmDfs.h、Lm.h) |
| Library | Netapi32.lib |
| DLL | Netapi32.dll |