Visual Basic 中学校 掲示板 投稿内容
タグのない投稿を抽出 統計 RSS

Visual Basic 中学校 > 投稿一覧 >

Wordファイル操作時の例外

タグの編集...

投稿者 否古太郎   (社会人)   投稿日時 2016/12/16 11:08:54
Wordファイルを使用した処理をVBで作成しています。
(VB 2008)
作成した実行ファイルは、交流会で知り合いになった方に配付しているのですが、
ある方より、Wordファイルの読込不良が頻発する、
というご連絡がありました。
Wordファイルの操作方法は、配布先のWordのバージョンが未定のため、
CreateObject("Word.Application")によるレイトバインドです。

Wordファイルの操作時には例外処理を設け、例外発生時には
例外のメッセージを表示するようにしていますが、
この方の環境では、以下の内容が表示されたとのことです。

「メッセージフィルターはアプリケーションがビジーであることを示しています。
(HRESULTからの例外:0x8001010A(RPC_E_SERVERCALL_RETRYLATER))」

私や他の方の環境では、このようなことが発生していません。
今回の例外の詳細を確認するため、ログ出力できるようにしようかと思いますが、
そもそも今回の例外はなぜ発生しているのでしょうか?
また、この問題を解消するためにはどのような方法があるでしょうか?
よろしくお願い致します。

投稿者 魔界の仮面弁士   (社会人)   投稿日時 2016/12/16 12:07:52
OLE オートメーションのタイムアウトが発生していないでしょうか。

Word 側がユーザーの操作待ちになっている状態、たとえば、
何らかのダイアログが出ている状態にメソッド呼び出し等を行うと、
そのようなエラーになるかも知れません。
Word の Visible は True になっていますか?

たとえばファイル操作のダイアログとか、何らかの確認メッセージボックスとか
顕現エラーメッセージとか、アドバタイズインストールの待機中画面とか…。

投稿者 否古太郎   (社会人)   投稿日時 2016/12/16 14:57:58
こんにちは、否古太郎です。
アドバイスありがとうございました。
Word のVisibleはTrueにしているので、
Word側で 何らかのダイアログが出ているかどうか、
確認してみます。