Q&A

  • 브라우저가 떠있는 상태에서 특정URL로 이동하고 싶어요..
브라우저가 떠 있는 상태에서 특정URL로 이동하는 것이 가능할까요?

ShellExecute()로 실행하면 실행할때마다 새로운 창이 열리거든요...



제가 하고 싶은 것은요...



이미 떠 있는 브라우저에서

url 입력에디트에서 url을 입력한 것과 똑같은 효과를 내고싶은 거거든요....



공부안한다고 나무라지만 마시고

도움좀 주세요.. 흑흑....

2  COMMENTS
  • Profile
    조규춘 2000.03.20 21:28
    병아리 wrote:

    > 브라우저가 떠 있는 상태에서 특정URL로 이동하는 것이 가능할까요?

    > ShellExecute()로 실행하면 실행할때마다 새로운 창이 열리거든요...

    >

    > 제가 하고 싶은 것은요...

    >

    > 이미 떠 있는 브라우저에서

    > url 입력에디트에서 url을 입력한 것과 똑같은 효과를 내고싶은 거거든요....

    >

    > 공부안한다고 나무라지만 마시고

    > 도움좀 주세요.. 흑흑....





    지금의 이 예제는 익스플러러로 특정 사이트를 여는 것입니다.





    uses

    Windows, OLEAuto;





    procedure OpenInternetExplorer( sURL : string );

    const

    csOLEObjName = 'InternetExplorer.Application';

    var

    IE : Variant;

    WinHanlde : HWnd;

    begin

    if( VarIsEmpty( IE ) )then

    begin

    IE := CreateOleObject( csOLEObjName );

    IE.Visible := true;

    IE.Navigate( sURL );

    end else

    begin

    WinHanlde := FindWIndow( 'IEFrame', nil );

    if( 0 <> WinHanlde )then

    begin

    IE.Navigate( sURL );

    SetForegroundWindow( WinHanlde );

    end else

    begin

    // handle error ...

    end;

    end;

    end;



    사용하는 방법은..........



    begin

    OpenInternetExplorer( 'www.delphi.co.kr' );

    end.



    그럼 행복한 프로그래밍 되셔요!



  • Profile
    병아리 2000.03.20 23:54
    답변 감사합니다.

    가르쳐 주신 대로 테스트 해봤는데요,

    제가 잘 못 테스트를 한 것인지는 모르겠지만

    OpenInternetExplorer( sURL : string ) 프로시져를 호출할때마다

    새로운 창이 계속해서 열리거든요....



    제가 하고 싶은 것은요...

    예를들어



    "main.htm"이라는 메인 프로그램은 로그인을 하는 메뉴라 하고,

    "pgm1.htm"이라는 프로그램은 인사조회 프로그램이라 치면...

    "pgm2.htm"이라는 프로그램은 급여조회 프로그램이라 치면...





    사용자가 "main.htm"에 접속해 로그인을 해둔상태에서

    "pgm1.htm"이라는 프로그램 또는

    "pgm2.htm"이라는 프로그램은

    Client Application에서 각주소를 넘겨주어 로그인 화면을 거치지 않고

    브라우저상에서 해당 URL로 바로 분기 시키려고 하는 것입니다.



    설명이 더 어렵게 되었는지도 모르겠네요....

    저는 바담풍해도 그것이 바람풍이라 이해하셨을줄로 믿습니다.

    고수님들의 도움 부탁드립니다..



    > 지금의 이 예제는 익스플러러로 특정 사이트를 여는 것입니다.

    >

    >

    > uses

    > Windows, OLEAuto;

    >

    >

    > procedure OpenInternetExplorer( sURL : string );

    > const

    > csOLEObjName = 'InternetExplorer.Application';

    > var

    > IE : Variant;

    > WinHanlde : HWnd;

    > begin

    > if( VarIsEmpty( IE ) )then

    > begin

    > IE := CreateOleObject( csOLEObjName );

    > IE.Visible := true;

    > IE.Navigate( sURL );

    > end else

    > begin

    > WinHanlde := FindWIndow( 'IEFrame', nil );

    > if( 0 <> WinHanlde )then

    > begin

    > IE.Navigate( sURL );

    > SetForegroundWindow( WinHanlde );

    > end else

    > begin

    > // handle error ...

    > end;

    > end;

    > end;

    >

    > 사용하는 방법은..........

    >

    > begin

    > OpenInternetExplorer( 'www.delphi.co.kr' );

    > end.

    >

    > 그럼 행복한 프로그래밍 되셔요!

    >