- ベストアンサー
VisualBasic6.0で状況依存ヘルプを表示する方法
- Visual Basic6.0で状況依存ヘルプを表示する方法を探しています。COBOLから直接ヘルプファイルを起動できないため、COBOLから一旦VBのプログラムを呼び出し、VBからヘルプファイルを呼び出す方法を検討しています。
- Microsoftのページを検索しましたが、Visual Basicから状況依存ヘルプを表示する具体的な方法は見つかりませんでした。ヘルプファイルは、ヘルプましんで作成しました。
- Visual Basic6.0(ほぼ初心者)のため、具体的な手順がわかりません。質問者は、Visual Basicから状況依存ヘルプを表示する方法についてアドバイスを求めています。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
あくまで方法論だけですが・・・ COBOLからVBを起動する時、コマンドラインを利用出来るのであれば、状況依存ヘルプの表示が可能になるかも知れません。 COBOLは利用した事がありませんので何とも云えませんが、 VB6であれば、HelpFileプロパティとHelpContextIDプロパティを使用して状況依存ヘルプを呼び出すことができます。 以下は例ですが、VB6で「help.exe」という実行ファイルを作成したとします。 コードは標準モジュールに記載します。 注意点として、プロジェクトプロパティで全般タブ内の「スタートアップの設定」を 「Sub Main」にしなければ動作しません。 (※あくまでサンプルです) Sub Main() Dim CommandLine As String CommandLine = Command() MsgBox CommandLine, , "コマンドライン取得" End Sub 実行時に、「help.exe /1 2」とコマンドラインを与えてやると コマンドライン取得というメッセージボックスに「/1 2」と表示されます。 「OK」を押せばhelp.exeは終了します。 念のためタスクマネージャで確認してみて下さい。 「/」を含む文字がコマンドラインになりますので、自由な文字を渡せます。 ただし、依存文字は駄目です。 あとは、文字を分解するなりして、ヘルプファイルを指定すれば良いかと。 この辺りは、VB側の処理になりますが、検索すればサンプルはいくらでも引っかかります。 注意しなければならないのは、VBを外部から起動していますので、 本体のCOBOLだけが終了するとVB側でエラーになる可能性があります。 本体のCOBOLが終了する時はVB側必ず終了する様にしないと、思わぬトラブルに遭います。 なお、ヘルプファイル作成については、シェアウェアですが、 「HTML Help for Visual Studio」があります。 Visual Basic関連の詳細な日本語資料も付いています。 参考にされてみてはいかがでしょうか? http://www1.odn.ne.jp/tamura/
お礼
教えていただいたページの「Visual BasicでのHTML Help利用」を見ながら、何とか状況依存ヘルプを表示する事ができました! COBOL→VBへのコンテキストIDの受け渡しもできたので、何とかなりそうです。 まだVBを終了するタイミング等の問題は残ってますが、頑張ってみます。 どうもありがとうございました。