はじめまして、森脇@学生と申します。
現在、研究でWEB BROWSERのURLをボタンを押すことで
表示URLを変更するアプリを製作しております。
VC++で作成しているのですが、IEを起動させるまでは
できるのですが、そのIEのポインタを用いてURLを変更
させるところでハンドルエラーが発生します。
IEのポインタを保持する方法がいけないのでしょうか?
識者の方、ぜひともIEのポインタを保持する方法をご教授
下さい。以下に抜粋したソースを掲載します。
TestThread.h:
#import "shdocvw.dll" rename_namespace("SHDocVw") named_guids
class CTestThread : public CWinThread
{
public:
CTestThread(); // 動的生成に使用されるプロテクト コンストラクタ
virtual ~CTestThread();
public:
SHDocVw::IWebBrowser2Ptr m_pWebBrowser;
}
TestThread.cpp:
#include "TestThread.h"
CTestThread::CTestThread()
{
CoInitialize();
m_pWebBrowser.CreateInstance(SHDocVw::CLSID_InternetExplorer);
m_pWebBrowser->PutTop(0);
m_pWebBrowser->PutLeft(0);
m_pWebBrowser->PutHeight(400);
m_pWebBrowser->PutWidth(600);
m_pWebBrowser->PutFullScreen(VARIANT_TRUE);
m_pWebBrowser->PutVisible(VARIANT_TRUE);
}
CTestThread::~CTestThread()
{
m_pWebBrowser->Quit(); <--ここでハンドルエラー
CoUninitialize();
}
BOOL CTestThread::pushBottun()
{
_variant_t strURL ("http://www.goo.ne.jp");
m_pWebBrowser->Navigate2(&strURL); <--ここでハンドルエラ
]
研究って人に頼る物?
ツイート | ![]() |