Skip to content

network drive

2005.08.29 17:07

han 조회 수:2042 추천:42

프로그램으로 네트워크 드라이브 연결/해제 | 델파이 2005/05/04 20:28  

http://blog.naver.com/tonyup/80012576356

출처 : http://www.howto.pe.kr  

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation
{$R *.DFM}

// 네트워크 드라이브 연결
procedure TForm1.Button1Click(Sender: TObject);
var
  lpszNetPath,
  lpszPassword,
  lpszLocalName: array[0..50] of Char;
  rt: DWORD;
begin
  StrPCopy(lpszPassword,  '1234'); // 네트워크 드라이브(공유폴더)의 비밀번호
  StrPCopy(lpszNetPath,   'Unify5insa'); // 네트워크 드라이브+공유폴더
  StrPCopy(lpszLocalName, 'F:'); // 로컬 드라이브명

  rt := WNetAddConnection(lpszNetPath, lpszPassword, lpszLocalName);

  if rt = 7 then
  begin
    ShowMessage('네트워크 드라이브를 연결할 수 없습니다. 비밀번호를 확인하세요');
  end
  else if rt <> WN_SUCCESS then
  begin
    MessageDlg('네트워크 드라이브를 연결할 수 없습니다'+
               ', Return Code: ' + (IntToStr(rt)) ,
               mtInformation, [mbOk], 0);
  end
  else
  begin
    ShowMessage('네트워크 드라이브가 설정되었습니다');
  end;
end;

// 네트워크 드라이브 연결 해제
procedure TForm1.Button2Click(Sender: TObject);
var
  lpszLocalName: array[0..50] of Char;
  rt: DWORD;
begin
  StrPCopy(lpszLocalName, 'F:'); // 로컬 드라이브명
  rt := WNetCancelConnection(lpszLocalName, True);

  if rt <> WN_SUCCESS then
  begin
    MessageDlg('네트워크 드라이브의 연결을 해제할 수 없습니다'+
               ', Return Code: ' + (IntToStr(rt)) ,
               mtInformation, [mbOk], 0);
  end
  else
  begin
    ShowMessage('네트워크 드라이브의 연결이 해제되었습니다');
  end;
end;

end.





{

//**** Return value list



  Value                  (Hex Value)  Meaning
   -----------------------------------------------------------------------
   WN_SUCCESS             (&H0)        Function was successful.
   WN_NOT_SUPPORTED       (&H1)        Function was not supported.
   WN_OUT_OF_MEMORY       (&HB)        System was out of memory.
   WN_NET_ERROR           (&H2)        An error occurred on the network.
   WN_BAD_POINTER         (&H4)        Pointer was invalid.
   WN_BAD_NETNAME         (&H32)       Network resource name was invalid.
   WN_BAD_LOCALNAME       (&H33)       Local device name was invalid.
   WN_BAD_PASSWORD        (&H6)        Password was invalid.
   WN_ACCESS_DENIED       (&H7)        A security violation occurred.
   WN_ALREADY_CONNECTED   (&H34)       Local device was already connected
                                       to a remote resource.
}

번호 제목 글쓴이 날짜 조회 수
1054 이별 휘야 2005.04.15 2069
1053 다시 윈도우로... han 2005.04.29 2069
1052 다시 리눅스로... han 2005.06.07 2069
1051 어제보다 나은 내일 석원 2005.08.22 2069
1050 기억 han 2005.09.05 2069
1049 질문 [1] 의대생 2005.09.16 2069
1048 몸무게 [1] WHRIA 2005.10.11 2069
1047 독감 주사 han 2005.10.19 2069
1046 요즘 맹수영중! [1] 휘야 2005.11.14 2069
1045 시스템의 문제 han 2006.02.15 2069
1044 갈팡 질팡 WHRIA 2006.03.02 2069
1043 건강 whria 2006.05.26 2069
1042 승석아... 재호 2002.01.26 2070
1041 홈에 카운터를 다시 달았습다. 한승석 2003.02.02 2070
1040 이런데도 있네 2003.02.09 2070

Powered by Xpress Engine / Designed by Sketchbook

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소