Microsoft MVP성태의 닷넷 이야기
[질문] IWebBrowser2로 POST값 구하기 [링크 복사], [링크+제목 복사],
조회: 12670
글쓴 사람
박용운 (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)
5939괴물신인7/9/2024352템플릿 대체할수있는방법이 있을까요? [6]
5938씨제바보7/5/2024587책 질문드립니다. [1]
5937Thor... donator5/27/20241950C# 12 는 전자책이 언제쯤 나오게 될까요? [1]
5936ds4/26/20242986활성화 되어 있는 커뮤니티 발견하게 되어 기분이 좋습니다. 자주 놀러 올께요. (내용 없습니다. [2]
5935양승조 donator4/25/20242614Reflection 관련 질문 드립니다. [5]파일 다운로드1
5934양승조 donator4/24/20242042Reflection 관련 질문 드립니다. [1]
5933vict...4/23/20241989cpp 라이브러리 디버깅 방법 문의 드립니다. [1]
5932EK4/12/20242164다음 제네릭에서 널익셉션이 뜨는 이유를 알수있을까요? [1]
5931이대희4/2/20242319Windows 앱 SDK C# 템플릿의 용도가 무엇인지요? [1]
5930vict...2/22/20243464ef core, FromSqlRaw 맵핑 질문입니다. [4]
5929a2/17/20243199.Net 8 에서 디버거 변경 [1]
5928vict...2/5/20243906wpf에서 대량 데이터 보여주는 방법 추천 부탁드립니다. [1]
5926엄태영1/12/20243681잘못된 Task 사용으로 인한 데드락 관련 질문 입니다. [3]
5925Euni...12/22/20233561Visual Studio에서 nodejs 사용시 npm install -g @vue/cli 실행시 오류 [1]
5924Euni...12/21/20233605Visual Studio에서 nodejs 사용시 C:\Program Files\nodejs\\node.exe" "C:\Program Files\nodejs\\node_modules\npm\bin\npm-cli.js" prefix -g 를 찾지 못하는 설치 오류 [2]
5923정두호12/4/20234071MSSQL 데이터 전송과 공유폴더의 데이터 전송 차이점 [1]
5922Heeg...10/27/20236213C++의 double pointer를 C#에서 구현하는 방법이 잘 안됩니다. [3]
5921한예지 donator10/3/20235788마샬링 정의 및 목적이 궁금합니다. [5]
5920한예지 donator10/3/20234921C#과 WIN32 API 관계 질문드립니다. [4]
5919이건우9/27/20234367WinForm의 로딩속도 관련 질문입니다 [2]
5917한예지 donator9/14/20234430동기화 도구 질문 있습니다. [4]
5916한예지 donator9/3/20234555Thread.Sleep(500), await Task.Delay(500), Task.Delay(500) 차이점이 궁금합니다. [2]
5915한예지 donator8/30/20234572비동기 코드를 for 문 안에 작성한 경우 제어 변수가 올바르게 동작하지 않는 이유가 궁금합니다. [3]
5914한상욱8/11/20234431.net wpf에서 skiasharp 의 skelement 를 canvas로 사용 하고 있습니다. [1]
5913김태우8/10/20234380지역변수로 이해하는 메서드매개변수 게시글 댓글 [3]
[1]  2  3  4  5  6  7  8  9  10  11  12  13  14  15  ...