人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

VC++でExcelCOM(2000)を使用したアプリケーションをExcel2003に対応しようとしたところ、mso9.dllが2003にないため、エラーとなりました。
使用している箇所は、

#import ”c:¥Program Files¥Microsoft Office¥Office¥mso9.dll” no_dual_interfaces

です。
http://www.microsoft.com/japan/msdn/howto/howtoOffice.asp
を調べてみるとExcel2003では、mso9.dllの代わりにexcel.exeとなっていて意味が分からない状態です。
解決する方法を教えてください。

●質問者: EguTaka
●カテゴリ:コンピュータ
✍キーワード:DLL Excel exe Microsoft Office Office
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● nitscape
●40ポイント

http://www.google.co.jp/

Google

#import ”c:¥Program Files¥Microsoft Office¥Office¥excel.exe” no_dual_interfaces

のようにしても動くと思いますが。。。

ファイル指定ですと環境によってエラーになることがありますから私の場合はインターフェース名を指定する方法を使っています。


#import ”progid:○○○” no_namespace, named_guids


というような形にするのがいいです。○の部分は使うCOMに合わせます。Excelの場合は「Excel.Application.9」などになります(Excel内のどの機能を利用するかによって変わります)。

◎質問者からの返答

ご返答ありがとうございます。

早速試してみたのですが、

?#import ”c:¥Program Files¥Microsoft Office¥Office¥excel.exe” no_dual_interfacesのようにしても動くと思いますが。。。

excel.tlh(自動生成されるファイル?)で大量のエラーが発生しました。

エラー内容は主に、

・型が指定されていない。

・シンタックスエラー

です。何か間違っていたのでしょうか?

?ファイル指定ですと環境によってエラーになることがありますから私の場合はインターフェース名を指定する方法を使っています。

私が作成したプログラムではなく、改変要求のプログラムなので、全てのインターフェイスを特定するのは、ちょっと困難なのでパスしました。

以上、よろしくお願い致します。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ