NetDfsRemove 函数 (lmdfs.h)

删除分布式文件系统 (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

另请参阅

分布式文件系统 (DFS) 函数

NetDfsAdd

NetDfsEnum

NetDfsRemoveFtRoot

NetDfsRemoveStdRoot

网络管理功能

网络管理概述