プロが教えるわが家の防犯対策術!

MDIアプリケーションを作成しているのですが、行き詰ってしまったので質問させていただきます。

開発環境はVB.net2008Expressを使用しています。

タイトルの通りなのですが、MDIの子ウィンドウとして既存のプログラムやソフトウェア(今回はOfficeのWordを起動しようとしています)を起動する方法を調べています。

Dim ass As System.Reflection.Assembly
ass = System.Reflection.Assembly.LoadFrom("起動したいプログラムのFullName")
Dim childFrm As Form = ass.CreateInstance("起動したい実行ファイルのメインフォームのクラス名")
childFrm.MdiParent = Me
childFrm.Show()
という方法を見つけて試してみたのですが、"起動したい実行ファイルのメインフォームのクラス名"がわからずオブジェクト参照されませんでした。

知識不足でどういった検索ワードで検索したらいいかもわからない状態です。どうか皆さんのお知恵を拝借させていただけないでしょうか?

A 回答 (2件)

Office2007は確認していませんが、少なくともWord 2003ではアセンブリを取得することができませんでした。

アセンブリが取得出来ない限り、リフレクションでクラス生成…というアプローチは難しい(というか不可能?)かと思います。

VB6.0時代はOLEで他のアプリケーションを取り込む方法がありました。.NETでOLEコンテナはなくなってしまったようですが、OLEの仕様から果敢に挑戦されているサイトを見つけたので、参考にしてみてください。
http://www5.plala.or.jp/atata/net/
    • good
    • 0

WebBrowserを使う



参考URL:http://support.microsoft.com/kb/243058/ja
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!