다음을 통해 공유


NetDfsAdd 함수(lmdfs.h)

새 DFS(분산 파일 시스템) 링크를 만들거나 DFS 네임스페이스의 기존 링크에 대상을 추가합니다.

구문

NET_API_STATUS NET_API_FUNCTION NetDfsAdd(
  [in]           LPWSTR DfsEntryPath,
  [in]           LPWSTR ServerName,
  [in]           LPWSTR ShareName,
  [in, optional] LPWSTR Comment,
  [in]           DWORD  Flags
);

매개 변수

[in] DfsEntryPath

DFS 네임스페이스에 있는 DFS 링크의 UNC(범용 명명 규칙) 경로를 지정하는 문자열에 대한 포인터입니다.

문자열은 두 가지 형식 중 하나일 수 있습니다. 첫 번째 양식은 다음과 같습니다.

\\ Servername\DfsName\link_path

여기서 ServerName 은 독립 실행형 DFS 네임스페이스를 호스트하는 루트 대상 서버의 이름입니다. DfsName 은 DFS 네임스페이스의 이름입니다. 및 link_path DFS 링크입니다.

두 번째 양식은 다음과 같습니다.

\\ Domainname\DomDfsname\link_path

여기서 DomainName 은 도메인 기반 DFS 네임스페이스를 호스트하는 도메인의 이름입니다. DomDfsname 은 도메인 기반 DFS 네임스페이스의 이름입니다. 및 link_path DFS 링크입니다.

이 매개 변수는 필수입니다.

[in] ServerName

링크 대상 서버 이름을 지정하는 문자열에 대한 포인터입니다. 이 매개 변수는 필수입니다.

[in] ShareName

링크 대상 공유 이름을 지정하는 문자열에 대한 포인터입니다. 공유에 상대적인 경로가 있는 공유 이름일 수도 있습니다. 예를 들어 share1\mydir1\mydir2입니다. 이 매개 변수는 필수입니다.

[in, optional] Comment

DFS 링크와 연결된 선택적 주석을 지정하는 문자열에 대한 포인터입니다. 이 매개 변수는 함수가 기존 링크에 대상을 추가할 때 무시됩니다.

[in] Flags

이 매개 변수는 다음 값을 지정하거나 플래그 없이 0을 지정할 수 있습니다.

DFS_ADD_VOLUME(0x00000001)

DFS 링크를 만듭니다. DFS 링크가 이미 있는 경우 NetDfsAdd 함수가 실패합니다. 자세한 내용은 주의 섹션을 참조하세요.

DFS_RESTORE_VOLUME(0x00000002)

이 플래그는 지원되지 않습니다.

반환 값

함수가 성공하면 반환 값이 NERR_Success.

함수가 실패하면 반환 값은 시스템 오류 코드입니다. 오류 코드 목록은 시스템 오류 코드를 참조하세요.

설명

DFS 네임스페이스가 이미 있어야 합니다. 이 함수는 새 DFS 네임스페이스를 만들지 않습니다.

호출자는 DFS 서버에 대한 관리자 권한이 있어야 합니다. 관리자 권한이 필요한 함수를 호출하는 방법에 대한 자세한 내용은 특수 권한으로 실행을 참조하세요.

DFS_ADD_VOLUME 플래그 사용은 선택 사항입니다. DFS_ADD_VOLUME 지정하고 링크가 이미 있는 경우 NetDfsAdd가 실패합니다. DFS_ADD_VOLUME 지정하지 않으면 NetDfsAdd는 필요한 경우 링크를 만들고 대상을 링크에 추가합니다. 새 링크가 만들어지는 시기를 결정해야 하는 경우 이 값을 지정해야 합니다.

예제

다음 코드 샘플에서는 NetDfsAdd 함수 호출을 사용하여 새 DFS 링크를 만드는 방법을 보여 줍니다. 샘플은 Flags 매개 변수에 DFS_ADD_VOLUME 값을 지정하므로 DFS 링크가 이미 있는 경우 NetDfsAdd에 대한 호출이 실패합니다. 기존 DFS 링크에 대상을 추가하려면 Flags 매개 변수에서 0을 지정할 수 있습니다.

#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;
   LPTSTR lpszComment;
   lpszComment = argc < 5 ? NULL : argv[4];
   //
   // Check for required parameters.
   //
   if (argc < 4)
      wprintf(L"Syntax: %s DfsEntryPath ServerName ShareName [\"Comment\"]\n", argv[0]);
   else
   {
      //
      // Call the NetDfsAdd function; fail the call 
      // if the DFS link already exists (DFS_ADD_VOLUME).
         //
      // To add a second storage to a DFS link, change
      // the last parameter to 0.
      //
      res = NetDfsAdd(argv[1], argv[2], argv[3], lpszComment, DFS_ADD_VOLUME);
      //
      // If the call succeeds,
      //
      if(res == 0)
         printf("Added DFS link\n");
      else
         printf("Error: %u\n", res);
   }
   return;
}

요구 사항

   
지원되는 최소 클라이언트 Windows Vista
지원되는 최소 서버 Windows Server 2008
대상 플랫폼 Windows
헤더 lmdfs.h(LmDfs.h, Lm.h 포함)
라이브러리 NetApi32.lib
DLL NetApi32.dll

참고 항목

DFS(분산 파일 시스템) 함수

NetDfsAddFtRoot

NetDfsAddStdRoot

NetDfsEnum

NetDfsRemove

네트워크 관리 함수

네트워크 관리 개요