[c++] 파일 및 디렉토리 네트워크 공유하기

파일 공유

C++에서 파일을 네트워크로 공유하려면 WNetAddConnection2 함수를 사용하는 것이 일반적입니다. 아래는 예시 코드입니다:

#include <windows.h>
#include <winnetwk.h>

int main() {
    // 네트워크 리소스 연결
    NETRESOURCE nr;
    nr.dwType = RESOURCETYPE_DISK;
    nr.lpLocalName = NULL;
    nr.lpRemoteName = L"\\\\서버이름\\공유이름";
    nr.lpProvider = NULL;

    WCHAR szPassword[MAX_PATH] = L"패스워드";
    WCHAR szUsername[MAX_PATH] = L"사용자이름";

    DWORD dwResult = WNetAddConnection2(&nr, szPassword, szUsername, 0);

    if (dwResult == NO_ERROR) {
        // 파일 공유 성공
    } else {
        // 파일 공유 실패
    }

    return 0;
}

디렉토리 공유

디렉토리를 네트워크로 공유하려면 파일 공유와 유사한 절차를 따릅니다. WNetAddConnection2 함수를 사용하여 디렉토리를 공유할 수 있습니다.

#include <windows.h>
#include <winnetwk.h>

int main() {
    // 네트워크 리소스 연결
    NETRESOURCE nr;
    nr.dwType = RESOURCETYPE_DISK;
    nr.lpLocalName = NULL;
    nr.lpRemoteName = L"\\\\서버이름\\공유이름\\폴더이름";
    nr.lpProvider = NULL;

    WCHAR szPassword[MAX_PATH] = L"패스워드";
    WCHAR szUsername[MAX_PATH] = L"사용자이름";

    DWORD dwResult = WNetAddConnection2(&nr, szPassword, szUsername, 0);

    if (dwResult == NO_ERROR) {
        // 디렉토리 공유 성공
    } else {
        // 디렉토리 공유 실패
    }

    return 0;
}

위의 코드는 Windows 플랫폼에서 파일 및 디렉토리를 네트워크로 공유하는 방법을 설명하고 있습니다. 여기서 WNetAddConnection2 함수를 사용하여 네트워크 리소스에 연결하고, 공유하려는 파일 또는 디렉토리의 경로, 사용자 이름 및 패스워드를 지정합니다.

이와 관련된 자세한 정보는 아래의 참고 자료를 참조하시기 바랍니다.

참고 자료: