Microsoft MVP성태의 닷넷 이야기
글쓴 사람
서광원 (cycos83 at naver.com)
홈페이지
첨부 파일
 

안녕하세요 IE를 이용한 자동으로 이곳 저곳을 탐색하는 프로그램을 만드는 중인 초보자 입니다.

현재 아래와 같은 코드로 응용 프로그램에서 IE를 띄워서 탐색하는 중입니다.

CComPtr<IWebBrowser2> pBrowser2;

 VARIANT vEmpty;
 VariantInit(&vEmpty);

 hr = CoCreateInstance(CLSID_InternetExplorer, NULL, CLSCTX_LOCAL_SERVER,
  IID_IWebBrowser2, (void**)&pBrowser2);
 
 pBrowser2->put_AddressBar(false);
 pBrowser2->put_ToolBar(false);
 pBrowser2->put_Left(-1);
 pBrowser2->put_Top(-1);
 pBrowser2->put_Width(700);
 pBrowser2->put_Height(400);
 pBrowser2->put_Visible(true);


strUrl.Format("http://www.devpia.com");
 bstrUrl = strUrl.AllocSysString();
 pBrowser2->Navigate(bstrUrl, &vEmpty, &vEmpty, &vEmpty, &vEmpty);
 SysFreeString(bstrUrl);
 

그런데 연속적으로 싸이트들을 방문하다 보면 가끔 alert 창이 뜨는 페이지들이 있습니다.

이런 경우는 직접 확인을 해줘야 하기 때문에 프로그램을 이용한 자동화가 막히고 있는 상황입니다.

검색을 하다보니 특정 함수를 구현하면 해당 메세지를 스킵 할 수 있다고 해서 코드를 받아서 붙여보기도 하고 했지만

제 프로젝트와는 성격이 안맞아서 인지 제가 원하는 결과가 나오지 않고 있습니다.

Navigate 함수를 이용한 탐색중에 나오는 javascript의 alert 명령을 무시할 수 있는 방법을 알려 주시면 감사하겠습니다.

참고로 제 프로젝트는 MFC 다이얼로그 기반의 프로젝트 이며(HTML다이얼로그는 아님) 다이얼로그에서 버튼을 누르면

쓰레드 함수를 생성하고 해당 쓰레드 함수에서 위에 적은 것과 같은 코드로 IE를 생성하게 됩니다.

IDocHostShowUI의 ShowMessage를 오버라이딩(?) 해서 제가 원하는 형식으로 구현을 하면 된다는 것 까지는 찾았는데 그것을 제 프로그램에 적용을 시키는 법을 모르겠습니다.

어떤식으로 오버라이딩(?)을 하고 오버라이딩해서 만들어진 클래스를 어떻게 IWebBrowser2을 이용해서 실행시켜 놓은 IE에 적용시키는지 예시를 들어 주시면 감사하겠습니다.








[최초 등록일: ]
[최종 수정일: 7/16/2009]


비밀번호

댓글 작성자
 



2009-07-16 11시48분
제가 보기에는 충분히 구현하실 수 있지 않을까 싶은데요.
관련한 인터페이스를 구현한 예제는 구글링을 통해서 찾아보시면 될 것 같습니다.

일단 예제 코드를 자신의 코드에 직접 응용하려고 하지 말고, 새로 프로젝트를 구성해서 그 예제가 잘 돌아갈 수 있는 코드 위주로 먼저 작성해 보십시오.
kevin25

1  2  3  4  5  6  7  8  9  10  11  [12]  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5648주니어개...4/13/20224141컴파일된 코드를 원시코드로 바꾸려면 어떻게해야하나요? [1]파일 다운로드1
5647장성욱4/7/20224177코어지정 CPU사용률 관련 질문 [1]
5646서형주4/6/20224212List에 여러개의 class 객체를 만들어 넣을때, 객체의 method들도 같이 생성되어 메모리를 차지하나요? [1]
5645김인태4/6/20223868윈도우즈 서버의 AD 계정 생성 조건이 있을까요? [1]
5644ㅇㅇ4/6/20224618c# 프로그램을 이용하여 리눅스상에 파일 생성이 가능한가요? [1]
5643유필재4/5/20224470TCP클라이언트 연결 및 통신관련하여 문의드려요 [1]
5642차가워4/4/20224728UdpClient 패킷 수신 문의 [4]
5641장성욱4/4/20225068코어 할당 및 cpu 부하테스트 질문 [7]
5640icoo...4/4/20224674웹가든에서 메모리 동적 업데이트 방법 [1]
5639차가워4/4/20224562c++ 서버 c# 클라이언트 호환 문의 [1]
5638초급4/3/20224860c# sql server 연동 [1]
5637따봉이4/1/20225143Winform Form Load 후 자동 캡쳐관련 [1]파일 다운로드1
5636김철순3/31/20225100WPF에서 Richtext의 View 문의 [5]
5635guest3/30/20225069안정적인 pinning이 가능하네요. [3]파일 다운로드1
5633꿀주세요3/30/20224753선생님 마우스 클릭이벤트 질문이 있습니다. [4]
5632김현수3/30/20225011Remote Desktop으로 접속시 WPF UI 가 다시 그려지는 이벤트를 막을 수 없을까요? [3]
5631김기헌3/24/20224741WPF 컨트롤의 그래픽 처리관련 질문드립니다 [2]파일 다운로드1
5630장성욱3/24/20224526로깅관련 질문입니다. [2]
5629감사합니...3/23/20224776함수에서 예외가 발생하면 try ~ catch처리기를 찾을 때 까지 상위 함수로 계속 올라가나요? [2]
5628홍길동3/23/20225394질문드립니다. [2]파일 다운로드1
5626연준혁3/21/20224662안녕하세요. [3]
5625jaew...3/18/20225556c# 8.0 도서를 구입한 사람입니다. [1]
5624초보자3/17/20224555람다 캡처 관련 문의 [2]
5623한예지 donator3/15/20224888인터프리터 원리가 궁금합니다. [4]
5622김민아3/8/20224888const와 readonly의 명확한 차이가 이게 맞나요? [2]
5621장성욱3/8/20224666c# 로그 관련 질문 [1]
1  2  3  4  5  6  7  8  9  10  11  [12]  13  14  15  ...