Microsoft MVP성태의 닷넷 이야기
[답변]: 2005 WebBrowser 내에서 팝업 처리 문제 관련 질문입니다. [링크 복사], [링크+제목 복사],
조회: 21229
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
부모글 보이기/감추기

IWebBrowser2를 사용하지 않으신다면, 올바른 방법은 존재하지 않습니다.

왜냐하면, 현재의 WebBrowser에서는 NewWindow2 이벤트에 날아오는 인자들을 걸러서, 특히 ppDisp를 아래와 같이 누락시켜 버리기 때문에 제어할 수 있는 방법이 없습니다.

 public void NewWindow2(ref object ppDisp, ref bool cancel)
 {
    CancelEventArgs args1 = new CancelEventArgs();
    this.parent.OnNewWindow(args1);
    cancel = args1.Cancel;
 }

몇 가지 우회 방법이 있긴 하지만, 별로 권장드리고 싶진 않습니다.

예를 들어, 세션 쿠키는 exe 프로세스 내에서만 유효하기 때문에 영구 쿠키를 사용하도록 웹 서버쪽을 바꾸신다면 인증 문제는 해결될 수 있지만, ... 제어가 가능한 서버에 한해서만 유효하고, 다른 웹 서버들은 역시 마찬가지로 세션이 끊기게 되겠지요. (물론, 영구 쿠키로 인한 보안 문제도 있고.)

또는, WebBrowser 인스턴스를 reflection으로 보면, AxIWebBrowser2 private 프로퍼티가 있는데 그것을 reflection을 이용해서 얻어낸 다음 IWebBrowser에 대해 직접 이벤트를 거는 방법이 있을 것입니다. NewWindow2 이벤트만 정상적으로 걸수 있다면 ppDisp 값을 변경시켜서 원하는 대로 주무를 수 있을 테니까요.

음... private 프로퍼티를 접근하는 것은 좀 그렇고... 차라리 Document에서 IWebBrowser2 인터페이스 포인터를 구해서 제어하는 것도 방법일 수 있겠습니다.

암튼... 개발이 얼마나 진행되었는지는 알수 없지만, 앞으로 튀어나올 문제를 생각한다면 지금이라도 돌아가실 것을 권장하고 싶습니다. ^^;








[최초 등록일: ]
[최종 수정일: 6/28/2021]


비밀번호

댓글 작성자
 




... 46  47  48  49  50  51  52  [53]  54  55  56  57  58  59  60  ...
NoWriterDateCnt.TitleFile(s)
1536솔솔3/9/201519922mac address얻으려고 하는데요.. [1]
1535Stud...3/4/201520043C#엔 MFC의 theApp 과 같은 기능을 하는것이 없나요? [3]
1534김동진3/4/201519830C#에서 BHO로 Windows Explorer에서의 동작이 가능할지요 [2]
1533김동현3/3/201520082컴파일 된 프로그램에 코드 삽입(?) 관련입니다. [1]
1532반가워요3/3/201523317C# 소켓연결에 packet송수신... [8]
1531강현수3/2/201522508C# com 등록 시 GUID 변경 관련 문의 [1]
1529김민규2/15/201520903C++ 64bit/32bit [3]파일 다운로드1
1528김개똥2/14/201518284좀 관련없는 질문이지만, 정말 답답하고 찾는데 명확한 해답 찾지못해 질문 올립니다. <Windows 사용자 인증> [1]
1527방문자1/27/201520129System Timer의 Tick에서 Backgroundworker를 호출하면 스레드 문제가 있을까요? [1]
1526황상대1/26/201522072C# 마샬링 관련 질문이 있습니다. [1]
1525Ji-y...1/19/201521765시작하세요 C# 프로그래밍 도서에 관한 질문입니다. [1]
1523임종복12/31/201429899windows 2008 r2에서 ms-sql 2008 서버사용시 tls문제점 [3]
1524임종복1/4/201524328    답변글 [답변]: windows 2008 r2에서 ms-sql 2008 서버사용시 tls문제점 [2]
1521윤대욱12/19/201420467C++ 에서 서버와 클라이언트를 나누어서 구조체 전달에 대해서 궁금합니다. [1]파일 다운로드1
152012/10/201421343datetime관련해서요 [1]
1516aTo12/1/201420103wpf 배포관련. [3]
1514얄미운제리11/17/201420300[C# Mono]Mono Chart 개발 문의드립니다. [1]
1355미나리나물11/13/201417827RDP 접속 방식 질문드리고 싶습니다. [1]
1353송용국11/10/201417037TeamFoundationServer 에 소스를 Target서버로 옮기는(내려주는) 방법 있나요? [1]
1351blue...11/7/201422641c# webbrowser 모바일환경 접속 [1]
1350에메11/7/201422569WCF namedpipe 퍼블리싱 충돌 문제 [3]파일 다운로드1
1349Chun...11/6/201426353Microsoft. Net Framework 액세스 거부 오류...... [2]
1348김준석11/6/201422747 Mini dump 기록 안되는 현상 [2]파일 다운로드1
1346개미11/5/201437147https페이지에서 http서버에 있는 이미지 파일 호출시 보안 오류 [8]
1345장구니11/4/201421425AWS 인스턴스를 만들었는데 [1]
1343h11/2/201420869안녕하세요 [1]
... 46  47  48  49  50  51  52  [53]  54  55  56  57  58  59  60  ...