Q&A

  • 통합프로그램에서 단위프로그램(EXE) 호출시 Login 정보 넘길 수 있는지?
기존에 개발된 프로그램들을 통합하는 메뉴를 만들려고 합니다....

각단위 프로그램들마다 .exe파일로 구성되어 있습니다...

통합메뉴를 LOGIN 할때 Sever접속 ID를 입력하게 되는데,

각단위 프로그램의 실행 Button을 Click하면 다시 Server에 접속할때의 ID를 요구하게 됩니다.



다시말해 하나의 프로그램에서 winexec 함수를 사용하여 다른 프로그램을 호출하려하는데 처음의 접속된 사용자정보 및 DB정보를 그대로 가져갈수 없는지에 대한 질문입니다..



첨 접속할때의 ID를 TEXT형태로 저장하여 호출된프로그램에서 쓸까하는 생각도 되지만

다른 좋은 방법이 있나 해서 글올립니다....



꼭좀 부탁드립니다...







3  COMMENTS
  • Profile
    바사기몬 2000.09.03 00:50
    파라미터를 전달하는 방법은 몇가지가 있습니다.

    1> command line에서 실행하듯이 공백문자를 집어넣어 전달하는 방법

    2> dll을 통해 로그인 정보를 공유하는 방법

    3> 레지스트리 또는 ini파일을 이용한 방법등이 있습니다.

    4> 이미 기동이 된 App에 DDE를 통해 전달하는 방법



    얘기하신 것이 첫번째 방식일 거라고 생각이 되는데요..



    winexec 또는 createprocess로 프로그램을 실행시킬때 실행명에 공백띄기를

    한 후 파라미터를 적어주면 실행시킨 프로그램에서 paramstr(1)으로 인식

    할 수 있습니다..

    예> winexec('c:bina.exe loginid passwd', <- 이런형태..



    그리고 받는 쪽은 paramcount <- 넘어온 파라미터 갯수

    paramstr(0) <- 실행파일명 즉 c:bina.exe

    paramstr(1) <- loginid

    paramstr(2) <- passwd

    가 됩니다..



    더 필요하신 사항이 있으시면 자세한 샘플을 드리도록 하죠...



    ps> 중복실행(같은 프로그램을 두번 실행)제어와

    단독실행(메뉴없이 단일exe실행)을 제어하는 부분은 처리 되셨는지요?



    푸른바다 wrote:

    > 기존에 개발된 프로그램들을 통합하는 메뉴를 만들려고 합니다....

    > 각단위 프로그램들마다 .exe파일로 구성되어 있습니다...

    > 통합메뉴를 LOGIN 할때 Sever접속 ID를 입력하게 되는데,

    > 각단위 프로그램의 실행 Button을 Click하면 다시 Server에 접속할때의 ID를 요구하게 됩니다.

    >

    > 다시말해 하나의 프로그램에서 winexec 함수를 사용하여 다른 프로그램을 호출하려하는데 처음의 접속된 사용자정보 및 DB정보를 그대로 가져갈수 없는지에 대한 질문입니다..

    >

    > 첨 접속할때의 ID를 TEXT형태로 저장하여 호출된프로그램에서 쓸까하는 생각도 되지만

    > 다른 좋은 방법이 있나 해서 글올립니다....

    >

    > 꼭좀 부탁드립니다...

    >

    >

    >

  • Profile
    김일영 2000.09.02 11:20
    Login시 사용되는 파라미터를 어떤 식으로든 넘길 수야 있겠죠.

    하지만 각 단위 프로그램마다 사실상 별도로 로그인을 다시 하는 문제는 피할 수가 없겠군요.

    제가 보기엔 안타깝지만 근본적으로 잘못 짠 시스템 같습니다.

    저도 비슷한 문제로 많이 고민했는데, 현재까지 제가 아는 어떤 DB연결 방법을 써서도

    DB Connection을 HModule을 넘겨서 공유하는 방법은 없습니다.

    심지어 COM으로 되어 있는 ADO조차도 그건 안되는 것 같더군요.

    결국 열개면 열개의 단위 프로그램은 각각 로그인을 별도로 하고

    Connection을 그만큼 낭비하게 될 것입니다.

    이건 DB User수에 지대한 영향을 미치겠죠?



    푸른바다 wrote:

    > 기존에 개발된 프로그램들을 통합하는 메뉴를 만들려고 합니다....

    > 각단위 프로그램들마다 .exe파일로 구성되어 있습니다...

    > 통합메뉴를 LOGIN 할때 Sever접속 ID를 입력하게 되는데,

    > 각단위 프로그램의 실행 Button을 Click하면 다시 Server에 접속할때의 ID를 요구하게 됩니다.

    >

    > 다시말해 하나의 프로그램에서 winexec 함수를 사용하여 다른 프로그램을 호출하려하는데 처음의 접속된 사용자정보 및 DB정보를 그대로 가져갈수 없는지에 대한 질문입니다..

    >

    > 첨 접속할때의 ID를 TEXT형태로 저장하여 호출된프로그램에서 쓸까하는 생각도 되지만

    > 다른 좋은 방법이 있나 해서 글올립니다....

    >

    > 꼭좀 부탁드립니다...

    >

    >

    >

  • Profile
    강호규 2000.09.02 11:17
    푸른바다 wrote:

    > 기존에 개발된 프로그램들을 통합하는 메뉴를 만들려고 합니다....

    > 각단위 프로그램들마다 .exe파일로 구성되어 있습니다...

    > 통합메뉴를 LOGIN 할때 Sever접속 ID를 입력하게 되는데,

    > 각단위 프로그램의 실행 Button을 Click하면 다시 Server에 접속할때의 ID를 요구하게 됩니다.

    >

    > 다시말해 하나의 프로그램에서 winexec 함수를 사용하여 다른 프로그램을 호출하려하는데 처음의 접속된 사용자정보 및 DB정보를 그대로 가져갈수 없는지에 대한 질문입니다..

    >

    > 첨 접속할때의 ID를 TEXT형태로 저장하여 호출된프로그램에서 쓸까하는 생각도 되지만

    > 다른 좋은 방법이 있나 해서 글올립니다....

    >

    > 꼭좀 부탁드립니다...

    >



    --------------------------------

    실행파일이 각기 분리되어 있다면



    실행시 파라메터로 물고 들어 가는 형태가 좋을거 같습니다.



    아무거든 처음 실행된 프로그램이



    ID와 Password를 가지고 있다가



    다른 EXE를 호출할 때



    "xxx.EXE ID Password"와 같은 형태로 호출하면 어떨까요?