IOleInPlaceObject::SetObjectRectsで、インプレースオブジェクトの範囲を指定する。
IOleInPlaceObject::SetObjectRects (oleidl.h) - Win32 apps | Microsoft Learn
概要説明
WebBrowserHost.cppで、
こう書く。
成功はするが、
左上に出来てしまう。
空キャプションの謎ウィンドウの正体。
デバッガでいろいろ調べていくと、
渡されるウィンドウハンドルはあるが、
OnCreateが終ってないので、m_hWndはNULLのまま、
ここも先に呼ばれてしまうし、
ここも先に呼ばれてしまう。
なので、WebBrowserHost.hに、
未確定のウィンドウハンドルm_hWndUndeterminedを追加。
OnCreateで、最初にm_hWndUndeterminedにhwndをセット。
DoVerbのところ、m_hWndUndeterminedに置き換え。
GetWindowも、
GetWindowContextも置き換える。
スクリプトエラーは出るけど、
指定の枠にロードされてる。
空キャプションの謎ウィンドウもなくなり、1つのウィンドウに統合されてる。