タイトル | : Exeファイルの挙動が途中で止まる |
記事No | : 12024 |
投稿日 | : 2020/03/12(Thu) 21:20 |
投稿者 | : mogi |
いつもお世話になっております。
使用言語 :vb.net 開発環境 :Visual Studio 2017 実行環境 :Microsoft Windows 10 使用ソフト:Excel 2019
ビルドが通ったExeファイルを起動すると、最初の2回までは適切に処理され、 正常に終了するのですが、3回目以降の起動で途中で停止状態になります。
本プログラムはテンプレートのExcelファイルを読み込み、それに対し、 書き込みを行った後、PDF出力を行うプログラムとなっております。 (PDFの出力にはExportAsFixedFormat メソッドを使用しています。)
停止状態になった際に、タスクマネージャーでExcelのCPU使用率が0%になっていることが 確認出来たため、Excelが原因のバグであると判断しました。
当初はComObjectの解放漏れが原因であると考えていたのですが、プログラムを確認すると 解放漏れはなく、Excelは正常に終了しておりました。 (プログラムをデバッグモードで起動し、プログラム内でExcelを終了させた後、タスクマネージャー上 のExcelが終了したことを「解放漏れは無い」という根拠としております。)
また、デバッグモードで実行するとPDF出力時に停止していることがわかりました。 しかしながら、該当箇所を確認すると、 「ネイティブフレームが呼び出し履歴の最初にあるため式を評価できません。」 となっており原因の特定には至りませんでした。
そういうわけで停止する原因がわからず、途方に暮れております。
以下2点質問させてください。 @1回目は正常に終了し、2回目以降にExcelが原因でプログラムが停止する理由には何が考えられるか。 A「ネイティブフレームが呼び出し履歴の最初にあるため式を評価できません。」というのは デバッグモードで式が最適化されているため適切に評価出来ないという理解であっているか。
その他必要な情報等ありましたらお申しつけ下さい。 拙文で申し訳ありませんが、よろしくお願いします。
|