http://sakura.qp.land.to/?Junk%2F39
|
DExploreメッセージDExplore形式のヘルプを起動する方法 DExplore.AppObj C++(Win32ベース)でDExploreを起動してヘルプを参照する方法がなかなかありません。 WSHからなら簡単にできるのですけど、Win32ベースからだと簡単には利用できません。 vshelp.tlbはあるのでvshelp.idlに変換して、さらにヘッダファイルを作成してみました。 このヘッダファイルはC++用です。C部分については省略しています。 Sample source code: ::CoInitialize( NULL ); CLSID ClassID; if( ::CLSIDFromProgID( DExploreAppObj_Name, &ClassID ) == S_OK ){ IHelp* pIHelp; //CLSCTX_LOCAL_SERVER or CLSCTX_SERVER or CLSCTX_ALL, ... if( ::CoCreateInstance( ClassID, NULL, CLSCTX_LOCAL_SERVER, IID_IHelp, (LPVOID)&pIHelp ) == S_OK ){ pIHelp->SetCollection( L"ms-help://MS.PSDKSVR2003R2.1033", L"" ); pIHelp->Contents(); //DExpore displayed! pIHelp->DisplayTopicFromF1Keyword( L"CoCreateInstance" ); pIHelp->SyncIndex( L"CoCreateInstance", 1 ); pIHelp->IndexResults(); pIHelp->Release(); //DExplore is end! } } ::CoUninitialize(); このコードだと実行するたびにDExploreが開きます。 すでに開いているDExploreを使いたい場合は別の方法を探す必要があります。 ヘッダファイルを添付しておきます。 このファイルは DExplore を呼び出すために必要なヘッダファイルです。 vshelp.zip 217件 [詳細] |