Microsoft MVP성태의 닷넷 이야기
[질문] IWebBrowser2로 POST값 구하기 [링크 복사], [링크+제목 복사],
조회: 17457
글쓴 사람
박용운 (sialnuri at yahoo.co.kr)
홈페이지
첨부 파일

안녕하세요?
저번에 자동로그인한다고 메일로 문의드렸던 놈(?)입니다.
COM에 대한 지식이 없어서 노가다로 문제해결하고 있는데 막히는 부분이 있어 몇자 남깁니다.
POST값을 알고있다는 전제하에서 Navigate로 POST로 전송하는것은 하루죙일 자료 찾아서 구현했는데
실제로, POST값을 읽어오는것이 쉽지않네요.

코드프로젝트에서 소스를 하나구해서 보는데 잘옮겨지지가 않네요. T.T
음..BHO를 사용하는 IEHelpr소스 아시죠?
그곳에 붙이고있는데 잘안됩니다.

POST로 값읽어오는거랑 실제 POST값이 넘어갈 URL읽어오는거 알려주시면 안될까요?
음..아니면 힌트라두..??

부탁드릴께요. 그럼..

첨부하는 소스는 코드프로젝트에서 다운받은거랍니다.









[최초 등록일: ]
[최종 수정일: 7/19/2003]


비밀번호

댓글 작성자
 



2003-07-18 06시02분
OnBeforeNavigator2 이벤트를 보시고, 넘어오는 인자를 확인하시면 됩니다.
생각보다 간단하지요. ^^
정성태
2003-07-18 06시02분
알려주신데로 이벤트관련해서 보고있는데 생각만큼 잘안되는군요.
IEHelpr에서 하고있는데 이곳에 보면
Invoke(DISPID dispidMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS* pDispParams, VARIANT* pvarResult, EXCEPINFO* pExcepInfo, UINT* puArgErr)
Invoke함수가 있고 이곳에서 이벤트를 제어하는것으로 생각됩니다.
case문중에 DISPID_BEFORENAVIGATE2가 있길래 이곳에서 파라미터로 넘어온 값들을 디버깅하면서 보는데 잘안되는군요.
하긴, 기본도 없이 맨땅에 하려니 벅차군요.
pDispParams파라미터 2번째 pDispParams->rgvarg[2]에 POST data값이 들어오는것 같은데 그냥은 아니고 형변환을 해야되는것 같은데 이부분에서 잘안됩니다.
어떻게 해야되는지요? 이부분만 알려주세요.
그냥 알려주시는것이 그렇다면 pDispParams구조체나 VARIANT구조체 변수들을 실제적으로 어떻게 활용하는지 알려주시면 제가 나름대로 시도해보겠습니다.
부탁드리겠습니다.
박용운
2003-07-18 06시02분
HOWTO: Handle Data from a Post Form When Hosting WebBrowser Control

라는 토픽으로 MSDN Library 에서 검색해 보세요.
답이 있습니다. ^^
정성태
2003-07-18 06시02분
감사합니다.
드뎌 POST값 읽어오는거 해결했습니다.
IEHelpr의 경우 파라미터로 VARIANT * PostData가 없어 조금 적용하는데 시간이 걸리긴 했지만요.
디버깅을 통해서 PostData에 해당되는것이 pDispParams->rgvarg[2].pvarVal이고
실제 POST값은 pDispParams->rgvarg[2].pvarVal->pvarVal->parray이곳에 들어있더군요.

앞으로 완전히 구현할려면 서버쪽도 같이하여 며칠 더 걸리겠지만 앞으로는 크게 어려운부분이 없으니...^^

이쪽으로 경험이 없어 아침에 와서 조금 헤매긴했지만 이렇게 찾고나니 마음은 가뿐하네요.
운영자님의 도움이 절대적이었네요.
다시 한번 감사드립니다.
박용운

... [16]  17  18  19  20  21  22  23  24  25  26  27  28  29  30  ...
NoWriterDateCnt.TitleFile(s)
5576노홍구11/29/202115534C# 으로 USB 스캐너 프린터 리셋하기 입니다. [1]
5575베라11/23/202115116event handler 관련 문의 [2]
5574박원웅11/22/202115782닷넷 프레임워크 산출물의 배포시 해당 환경에 프레임워크 버전이 설치되어 있지 않는 경우를 고려한 배포방법은? [3]
5573mijin11/21/202114542System.NullReferenceException 에 대한 질문 [1]
5572김현진11/21/202114787C# list.Clear() 호출에 대한 문의 드립니다. [4]
5571한예지 donator11/18/202114545무설치 프로그램 원리가 궁금합니다. [2]
5570초보11/16/202115224주식데이터 초당 수신 건수를 구하고 있는데 처리속도가 느려서요 [2]
5569카짜프로...11/14/202116837381페이지 UTC에대한 언급이 그리니치 천문대 시간으로 되어있는게 맞나요? [1]
5568카짜프로...11/14/202116487그림 5.20, 그림 5.22 언급 오류 [1]
5567Edun11/2/202114808쿼리문을 코드로 어떻게 처리할 수 있을까요? [2]
5566민성10/26/202114247Linq에 관해서 [1]
5565pass...10/25/202115579wpf에서 Cefsharp를 AnyCPU로 작업 했는데 실행이 되지 않습니다. [4]
5564초보10/21/202113783오버라이드 관련 질문드립니다 [2]
5562서지훈10/20/202113645win32 api 문의 드립니다. (EnableMenuItem) [5]
5561Edun10/15/202114866도와주세요!! 팝업 띄우는 더블클릭 이벤트!! 부탁드립니다 ㅠㅠ [4]파일 다운로드1
5560Edun10/13/202115023C#초보자 개념이해 도와주세요!! [4]
5559최가운10/5/202115823C# debugging 중에 Thread Pool Worker들이 사라지는데요 [3]
5558옥코드9/29/202116282안녕하세요! EntityFramework Linq 질문 드리겠습니다. [4]
5557임기성9/16/202115782웹 사이트(IIS)가 오류로 인하여 빈번하게 죽는 이슈 문의 [1]
5556hjlee9/13/202114763visual studio 설치 없이 csi.exe (C# interactive) tool을 설치할 수 있을까요? [2]
5555이성열 donator9/2/202114560C# 런타임(Reflection)에서 소스코드에 입력한 함수설명(Summary)을 가져올 수 있을까요? [3]
5554농상9/2/202116034enum 원소값이 중복인 경우 출력 [4]
5553shdt...8/31/202113817제너릭을 new로 할당했는데 null인 경우가 존재하나요? [1]
5552hjsh...8/30/202114438C# 폼 - 마우스가 다른 버튼 위를 움직일 때도 폼의 페인트핸들러가 호출되는 것이 맞나요? [2]
5551하나다라마8/27/202114155뽀모도로 타이머 개선사항 [1]
5550하영8/27/202118090SqlDataReader 관련 질문입니다. [8]
... [16]  17  18  19  20  21  22  23  24  25  26  27  28  29  30  ...