Q&A

  • LAN에서 서버를 드라이브 Mapping
장수하세요.



윈도우 API함수중에 WNetAddConnection2를 이용하면

네트워크(LAN)에서 서버를 드라이브 Mapping할 수 있다고 합니다.

델파이에서는 어떻게 하는지요?



NETRESOURCE라는 스트럭쳐를 선언하고 하는 방법이 어떻게 되는지요?



<참고로, 아래는 C++의 소스입니다.>

#include

#include



void main(void)

{

NETRESOURCE netrc;



netrc.dwScope = RESOURCE_GLOBALNET ;

netrc.dwType = RESOURCETYPE_DISK;

netrc.dwDisplayType = RESOURCEDISPLAYTYPE_GENERIC;

netrc.lpLocalName = "F:";

netrc.lpRemoteName = "\Appswsys";

netrc.lpProvider = NULL;



UINT ret = ::WNetAddConnection2(&netrc, "XYZ123", "XYZ123", CONNECT_UPDATE_PROFILE);

if (NO_ERROR == ret)

{

printf("Connection Success !!!n");

}

else

{

printf("Connection Failed !!!n");

}

}

}





2  COMMENTS
  • Profile
    이정욱 1999.05.24 22:17
    아래처럼 해보세요.

    그냥 온라인상에서 바꿨으므로 약간의 수정이 필요할 수 있습니다.



    var

    netrc : TNetResource;

    begin

    netrc.dwScope = RESOURCE_GLOBALNET ;

    netrc.dwType = RESOURCETYPE_DISK;

    netrc.dwDisplayType = RESOURCEDISPLAYTYPE_GENERIC;

    netrc.lpLocalName = "F:";

    netrc.lpRemoteName = "Appswsys";

    netrc.lpProvider = NIL;



    If NetAddConnection2(&netrc, "XYZ123", "XYZ123", CONNECT_UPDATE_PROFILE) = NO_ERROR

    then ShowMessage("Connection Success !!!");

    else ShowMessage("Connection Failed !!!");

    end;



    이천주 wrote:

    > 장수하세요.

    >

    > 윈도우 API함수중에 WNetAddConnection2를 이용하면

    > 네트워크(LAN)에서 서버를 드라이브 Mapping할 수 있다고 합니다.

    > 델파이에서는 어떻게 하는지요?

    >

    > NETRESOURCE라는 스트럭쳐를 선언하고 하는 방법이 어떻게 되는지요?

    >

    > <참고로, 아래는 C++의 소스입니다.>

    > #include

    > #include

    >

    > void main(void)

    > {

    > NETRESOURCE netrc;

    >

    > netrc.dwScope = RESOURCE_GLOBALNET ;

    > netrc.dwType = RESOURCETYPE_DISK;

    > netrc.dwDisplayType = RESOURCEDISPLAYTYPE_GENERIC;

    > netrc.lpLocalName = "F:";

    > netrc.lpRemoteName = "\Appswsys";

    > netrc.lpProvider = NULL;

    >

    > UINT ret = ::WNetAddConnection2(&netrc, "XYZ123", "XYZ123", CONNECT_UPDATE_PROFILE);

    > if (NO_ERROR == ret)

    > {

    > printf("Connection Success !!!n");

    > }

    > else

    > {

    > printf("Connection Failed !!!n");

    > }

    > }

    > }

    >

    >





  • Profile
    이천주 1999.05.26 03:05
    "그냥 온라인상에서 바꿨으므로 약간의 수정이 필요할 수 있습니다."

    그래서, 수정한 소스를 다른 분들을 위해 게시합니다.





    procedure TForm1.Button1Click(Sender: TObject);

    var

    netrc : TNetResource;

    begin

    netrc.dwScope := RESOURCE_GLOBALNET ;

    netrc.dwType := RESOURCETYPE_DISK;

    netrc.dwDisplayType := RESOURCEDISPLAYTYPE_GENERIC;

    netrc.lpLocalName := 'F:';

    netrc.lpRemoteName := 'Appswsys';

    netrc.lpProvider := NIL;



    If WNetAddConnection2(netrc, 'xyz123', 'xyz123', CONNECT_UPDATE_PROFILE) = NO_ERROR

    then ShowMessage('Connection Success !!!')

    else ShowMessage('Connection Failed !!!');

    end;





    ======================================================

    이정욱 wrote:

    > 아래처럼 해보세요.

    > 그냥 온라인상에서 바꿨으므로 약간의 수정이 필요할 수 있습니다.

    >

    > var

    > netrc : TNetResource;

    > begin

    > netrc.dwScope = RESOURCE_GLOBALNET ;

    > netrc.dwType = RESOURCETYPE_DISK;

    > netrc.dwDisplayType = RESOURCEDISPLAYTYPE_GENERIC;

    > netrc.lpLocalName = "F:";

    > netrc.lpRemoteName = "Appswsys";

    > netrc.lpProvider = NIL;

    >

    > If NetAddConnection2(&netrc, "XYZ123", "XYZ123", CONNECT_UPDATE_PROFILE) = NO_ERROR

    > then ShowMessage("Connection Success !!!");

    > else ShowMessage("Connection Failed !!!");

    > end;

    >

    > 이천주 wrote:

    > > 장수하세요.

    > >

    > > 윈도우 API함수중에 WNetAddConnection2를 이용하면

    > > 네트워크(LAN)에서 서버를 드라이브 Mapping할 수 있다고 합니다.

    > > 델파이에서는 어떻게 하는지요?

    > >

    > > NETRESOURCE라는 스트럭쳐를 선언하고 하는 방법이 어떻게 되는지요?

    > >

    > > <참고로, 아래는 C++의 소스입니다.>

    > > #include

    > > #include

    > >

    > > void main(void)

    > > {

    > > NETRESOURCE netrc;

    > >

    > > netrc.dwScope = RESOURCE_GLOBALNET ;

    > > netrc.dwType = RESOURCETYPE_DISK;

    > > netrc.dwDisplayType = RESOURCEDISPLAYTYPE_GENERIC;

    > > netrc.lpLocalName = "F:";

    > > netrc.lpRemoteName = "\Appswsys";

    > > netrc.lpProvider = NULL;

    > >

    > > UINT ret = ::WNetAddConnection2(&netrc, "XYZ123", "XYZ123", CONNECT_UPDATE_PROFILE);

    > > if (NO_ERROR == ret)

    > > {

    > > printf("Connection Success !!!n");

    > > }

    > > else

    > > {

    > > printf("Connection Failed !!!n");

    > > }

    > > }

    > > }

    > >

    > >

    >

    >





    • 이상석
    • 1999.05.25 00:57
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 모승열
      1999.05.25 01:26
      이상석 wrote: > 안녕하세요 이상석입니다. > 다름이 아니오라 델파이 4에서 DateTimePicker 에서 날짜만...
    • 지니
    • 1999.05.25 00:36
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.25 02:48
      아래 답변에 SendData 프로시져입니다 라는것이 있습니다. 그것을 참고하세요. 여기서 SendData라는 키워...
    • 영인
    • 1999.05.25 00:35
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 신인재
      1999.05.25 01:53
      type tmynum=set of [1..20]; 문장 에러가 나는 군요.. 저도 잘쓰지 않아서 헬프를 참고 했는데 아래...
    • 신인재
      1999.05.25 02:12
      type tmynum= set of 1..90; var mynum:tmynum; aa : Boolean; begin mynum:=[1,2,3,4,10,20...
    • 왕초
    • 1999.05.25 00:32
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.05.25 03:57
      왕초 wrote: > DLL 사용시에 변수 사용 질문입니다.. > 정적 DLL를 사용하고 있고요.. > DLL 안의 함수...
    • sunhee
    • 1999.05.25 00:28
    • 1 COMMENTS
    • /
    • 0 LIKES
    • KJW
      1999.06.04 06:59
      sunhee 께서 말씀하시기를... > 안녕하세요. 선희덕이라고 합니다. > > A라는 프로그램에서 B라는 프...
    • 고부성
    • 1999.05.25 00:17
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.25 03:02
      함수인자로 사용하세요. 만약 계산식이 더하는것이라면... function Add(a,b ; integer) : integer; 이...
    • 이정욱
      1999.05.25 03:03
      쩝.. RxLib를 사용하세요. 그안에 RichEdit2 용 컴포넌트가 있습니다. 전진우 wrote: > TRichEdit...
    • 임태영
    • 1999.05.24 23:33
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 모승열
      1999.05.25 00:36
      임태영 wrote: > 안녕하세요,,, 임태영입니다. > > 서버에 있는 테이블을 사용하려고 할 때 User name...
    • 심인애
    • 1999.05.24 23:32
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 모승열
      1999.05.25 00:30
      심인애 wrote: > 전 대1 학생입니다 . > 교수님이 아래와같은 레포트를 내주셔서 고민하다 > 이렇게 ...
    • 김경수
      1999.05.25 07:25
      안녕하세요. 스택을 이용해 작성한 단순 무식하게 짠 진짜 간단한 계산기입니다. 그냥 참고로 보시라구...
    • 김경수
      1999.05.25 10:42
      안녕하세요. 화일이 업로드가 안되는것 같네요.. 그냥 복사해서 드립니다.초보라서..히 unit u_stack; ...
    • 우민석
    • 1999.05.24 23:31
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 변대섭
      1999.05.25 00:39
      우민석 wrote: > 제가 짜는 프로그램은 DBGrid을 이용하여 한 레코드 단위로 바로 바로 데이터 베이스을 A...
    • 박용근
    • 1999.05.24 22:49
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.25 00:20
      꼭 필요한것은 아닙니다. 공개된 시리얼 통신 컴포넌트를 사용하셔도 됩니다. 그런데 만약 ZModem같은 파...
    • 김병태
    • 1999.05.24 22:15
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.25 00:21
      이미 패치가 되어져 있는것으로 되어있습니다. 즉 해결이 되었다고 하더군요. 또 퀵리포트 정품을 사용하...
    • 고부성
    • 1999.05.24 21:25
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.25 03:16
      Edit46안에 숫자가 아닌다른문자를 쓰신것 같네요. 숫자만 변환이 가능해집니다. AccessViolation은 아...
    • 이기남
    • 1999.05.24 20:31
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.25 01:27
      모든DB파일이 같은디렉토리안에 있다면 특별히 알리아스를 변경하실 필요는 없을것 같습니다. TableName만...
    • 반정현
    • 1999.05.24 20:25
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 모승열
      1999.05.25 00:23
      반정현 wrote: > 저는 델파이 초보입니다. > > 시간함수 > time() > > 를 값으로 추출하여 ...
    • 이천주
    • 1999.05.24 20:04
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.24 22:17
      아래처럼 해보세요. 그냥 온라인상에서 바꿨으므로 약간의 수정이 필요할 수 있습니다. var netrc :...
    • 이천주
      1999.05.26 03:05
      "그냥 온라인상에서 바꿨으므로 약간의 수정이 필요할 수 있습니다." 그래서, 수정한 소스를 다른 분들을 ...