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.
}

번호 제목 글쓴이 날짜 조회 수
784 다시 리눅스로... han 2005.06.07 2069
783 야호 J 2005.07.31 2069
782 어제보다 나은 내일 석원 2005.08.22 2069
781 건담 SEED WHRIA 2005.09.04 2069
780 기억 han 2005.09.05 2069
779 질문 [1] 의대생 2005.09.16 2069
778 독감 주사 han 2005.10.19 2069
777 요즘 맹수영중! [1] 휘야 2005.11.14 2069
776 갈팡 질팡 WHRIA 2006.03.02 2069
775 미국 han 2006.04.28 2069
774 Re: 지나가는길에... 한승석 2001.01.27 2068
773 여기는 신촌 최평균 2001.02.11 2068
772 이런데도 있네 2003.02.09 2068
771 남자와 여자 한승석 2003.02.11 2068
770 오래간만에 집에 왔다. 한승석 2003.02.15 2068

Powered by Xpress Engine / Designed by Sketchbook

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


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

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

설치 취소