NetDfsSetInfo 函数 (lmdfs.h)

设置或修改有关特定分布式文件系统的信息, (DFS) 根、根目标、链接或链接目标。

语法

NET_API_STATUS NET_API_FUNCTION NetDfsSetInfo(
  [in]           LPWSTR DfsEntryPath,
  [in, optional] LPWSTR ServerName,
  [in, optional] LPWSTR ShareName,
  [in]           DWORD  Level,
  [in]           LPBYTE Buffer
);

parameters

[in] DfsEntryPath

指向指定通用命名约定 (UNC) DFS 根或链接路径的字符串的指针。

对于链接,字符串可以是两种形式之一。 第一种形式如下所示:

\\ServerName\DfsName\link_path

其中 ,ServerName 是承载独立 DFS 命名空间的根目标服务器的名称; DfsName 是 DFS 命名空间的名称; 和 link_path 是 DFS 链接。

第二种形式如下:

\\DomainName\DomDfsname\link_path

其中 ,DomainName 是托管基于域的 DFS 命名空间的域的名称; DomDfsname 是 DFS 命名空间的名称; 和 link_path 是 DFS 链接。

对于根,字符串可以是以下两种形式之一:

\\ServerName\DfsName

\\DomainName\DomDfsname

其中,名称的值与前面所述的值相同。

[in, optional] ServerName

指向指定 DFS 链接目标服务器名称的字符串的指针。 此参数是可选的。 有关详细信息,请参见“备注”部分。

[in, optional] ShareName

指向指定 DFS 链接目标共享名称的字符串的指针。 这也可能是具有相对于共享的路径的共享名称。 例如,“share1\mydir1\mydir2”。 此参数是可选的。 有关详细信息,请参见“备注”部分。

[in] Level

指定数据的信息级别。 此参数的取值可为下列值之一:

100

设置与 DfsEntryPath 参数中指定的 DFS 根或链接关联的注释。 Buffer 参数指向DFS_INFO_100结构。

101

设置与 DfsEntryPath 参数中指定的 DFS 根或链接关联的存储状态。 Buffer 参数指向DFS_INFO_101结构。

102

设置与 DfsEntryPath 参数中指定的 DFS 根或链接关联的超时值。 Buffer 参数指向DFS_INFO_102结构。

103

DfsEntryPath 参数中指定的 DFS 根或链接设置属性标志。 Buffer 参数指向DFS_INFO_103结构。

104

DfsEntryPath 参数中指定的根目标或链接目标设置目标优先级排名和类。 Buffer 参数指向DFS_INFO_104结构。

105

DfsEntryPath 参数中指定的 DFS 根或链接设置注释、状态和超时信息以及属性标志。 Buffer 参数指向DFS_INFO_105结构。

106

设置 DfsEntryPath 参数中指定的根目标或链接目标的目标状态和优先级。 无法为 DFS 命名空间根或链接设置此信息,仅针对根目标或链接目标。 Buffer 参数指向DFS_INFO_106结构。

107

DfsEntryPath 参数中指定的 DFS 根或链接设置注释、状态、超时信息和属性标志。 对于 DFS 链接,还可以为链接的重分析点设置安全描述符。 Buffer 参数指向DFS_INFO_107结构。

150

为 DFS 链接的重新分析点设置安全描述符。 Buffer 参数指向DFS_INFO_150结构。

[in] Buffer

指向指定数据的缓冲区的指针。 此数据的格式取决于 Level 参数的值。 有关详细信息,请参阅 网络管理功能缓冲区

返回值

如果函数成功,则返回值NERR_Success。

如果函数失败,则返回值为系统错误代码。 有关错误代码的列表,请参阅 系统错误代码

注解

调用方必须在 DFS 服务器上具有管理员权限。 有关调用需要管理员权限的函数的详细信息,请参阅 使用特殊特权运行

如果同时指定 ServerNameShareName 参数, NetDfsSetInfo 函数将设置或修改特定于该根目标或链接目标的信息。 如果参数为 NULL,则函数设置或修改特定于 DFS 命名空间根或 DFS 链接的信息,而不是特定的 DFS 根目标或链接目标。

由于只能为 DFS 根或链接设置一个注释和一个超时,因此对于信息级别 100 和 102, 将忽略 ServerNameShareName 参数。 级别 101 需要这些参数。

对于信息级别 101,当 DFS 命名空间有多个 DFS 根目标时,可以为基于特定域的 DFS 根目录设置DFS_VOLUME_STATE_RESYNCHRONIZE和DFS_VOLUME_STATE_STANDBY状态值,如下所示:

DfsEntryPath 参数指定基于域的 DFS 命名空间,ServerNameShareName 参数一起指定要对其执行 set-information 操作的 DFS 根目标。

示例

以下代码示例演示如何使用调用 NetDfsSetInfo 函数将注释与 DFS 链接相关联。 此示例指定信息级别 100 (DFS_INFO_100) 。

#include <windows.h>
#include <lm.h>
#include <lmdfs.h>
#include <stdio.h>
#pragma comment(lib, "Netapi32.lib")

void wmain(int argc, wchar_t *argv[])
{
   DFS_INFO_100 dfsData;
   DWORD res;
   //
   // Check command line arguments.
   //
   if (argc<2)
      wprintf(L"Syntax: %s DfsEntryPath [\"Comment\"]\n", argv[0]);
   else
   {
      //
      // Fill in DFS_INFO_100 structure member.
      //
      dfsData.Comment = argc < 3 ? NULL : argv[2];
      //
      // Call the NetDfsSetInfo function, specifying level 100.
      //
      res = NetDfsSetInfo(argv[1], NULL, NULL, 100, (LPBYTE) &dfsData);
      //
      // Display the result of the call.
      //
      if(res == 0)
         printf("Comment set.\n");
      else
         printf("Error: %u", res);
   }
   return;
}

要求

   
最低受支持的客户端 Windows Vista
最低受支持的服务器 Windows Server 2008
目标平台 Windows
标头 lmdfs.h (包括 LmDfs.h、Lm.h)
Library Netapi32.lib
DLL Netapi32.dll

另请参阅

DFS_INFO_100

DFS_INFO_101

DFS_INFO_102

DFS_INFO_103

DFS_INFO_104

DFS_INFO_105

DFS_INFO_106

DFS_INFO_107

DFS_INFO_150

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

NetDfsEnum

网络管理功能

网络管理概述