Microsoft MVP성태의 닷넷 이야기
[질문] IWebBrowser2로 POST값 구하기 [링크 복사], [링크+제목 복사],
조회: 16716
글쓴 사람
박용운 (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이곳에 들어있더군요.

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

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

1  2  [3]  4  5  6  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5920한예지 donator10/3/202313721C#과 WIN32 API 관계 질문드립니다. [4]
5919이건우9/27/202312384WinForm의 로딩속도 관련 질문입니다 [2]
5917한예지 donator9/14/202313105동기화 도구 질문 있습니다. [4]
5916한예지 donator9/3/202313504Thread.Sleep(500), await Task.Delay(500), Task.Delay(500) 차이점이 궁금합니다. [2]
5915한예지 donator8/30/202314939비동기 코드를 for 문 안에 작성한 경우 제어 변수가 올바르게 동작하지 않는 이유가 궁금합니다. [3]
5914한상욱8/11/202314458.net wpf에서 skiasharp 의 skelement 를 canvas로 사용 하고 있습니다. [1]
5913김태우8/10/202314037지역변수로 이해하는 메서드매개변수 게시글 댓글 [3]
5912guest4/25/202319509[참고 - 초보용] Sqlite 디비는 double이 없고 Real이 대신합니다 [3]
5911guest4/24/202313216Form1.cs와 외부 class.cs와 통신 (static async method포함) [4]파일 다운로드1
5910guest4/24/202312560Async 메서드와 try~catch [1]
5909guest4/22/202314192Visual Studio 구매 시(1인 개발자) [4]
5908guest4/22/202313406텅빈 원그리기 [5]
5907민성4/21/202313416안녕하세요 서버 백업 문제에 대해서 [2]
5906guest4/21/202313685Dispatcher 서비스 구현 질문 [1]
5905guest4/20/202314754tabControl의 tabPage가 여러 개일 때 순서를 바꾸기가 까다롭네요 [5]
5904guest4/18/202315071[신규자료첨부] DLL 'SQLite.Interop.dll'을 찾을 수 없습니다 [4]파일 다운로드1
5903guest4/18/202313691fileSystemWatcher 이벤트 관련 질문입니다 [2]
5902guest4/17/202314834c#으로 USB 관련 질문 [2]
5901guest4/17/202312086내솔루션 판매 시 1.0.0.0 폴더와 Sqlite 배포 [5]
5900guest4/17/202315249DLL 'SQLite.Interop.dll'을 찾을 수 없습니다 [2]파일 다운로드1
5899guest4/17/202313212Dictionary와 Linq [4]
5898차가워4/17/202312808CNTK 교육 문의 [1]
5897guest4/17/202312410Socket스레드와 UI thread [4]
5896HAN4/16/202312497c언어 return 에 대해 궁금한게 있어요. [1]파일 다운로드1
5895guest4/15/202312712Drag and Drop - 모든 컨트롤 [2]
5894송부장4/14/202314677[질문] Visual Studio 2022에서 '도구 상자 항목 선택'의 'COM 구성 요소' 탭에서 ActiveX 목록이 보이지 않습니다. [3]파일 다운로드2
1  2  [3]  4  5  6  7  8  9  10  11  12  13  14  15  ...