- PR -

ユーザ操作でExcelアプリケーションが終了してしまう

投稿者投稿内容
ぶさいくろう
ぬし
会議室デビュー日: 2005/11/22
投稿数: 1232
お住まい・勤務地: 川崎市(は俺も含めてロクな人間が住んでないよw)
投稿日時: 2007-02-22 13:24
えーーーーそれって、自分で書いたソースが理解できてないってことだよ?
それはまずいよー。頑張って読み取りつつコーディングしようぜ。な!
自分で追ってみてよ。何ならブレイクポイント設定して自分で落として確認してみたらどう?

これだけだと怒られそうなのでてきとうに手順をば。

1.ブレイクポイントの設定
→L_XLApp.Visible = True 'Excel表示
この行にブレイクポイント設定する。

2.デバッグ実行してあぼーんさせる
さっきの行でブレイクしたらあぼーんさせる。
タスクマネージャからでもどっからでもいい。

3.適当なxlsファイルをエクスプローラから開く。

っていう話をここまでの皆さんがしていたと思うんだけどなぁ。

あ。言い忘れた。

>Try〜Catch句でキャッチできないエラーですか?

とか言ってるけど。今の実装じゃキャッチしても何の解決にもならないよ。

[ メッセージ編集済み 編集者: ぶさいくろう 編集日時 2007-02-22 13:25 ]
BlueField
会議室デビュー日: 2007/02/15
投稿数: 12
お住まい・勤務地: 茨城
投稿日時: 2007-02-22 15:51
引用:

ぶさいくろうさんの書き込み (2007-02-22 13:24) より:
1.ブレイクポイントの設定
→L_XLApp.Visible = True 'Excel表示
この行にブレイクポイント設定する。

2.デバッグ実行してあぼーんさせる
さっきの行でブレイクしたらあぼーんさせる。
タスクマネージャからでもどっからでもいい。

3.適当なxlsファイルをエクスプローラから開く。

っていう話をここまでの皆さんがしていたと思うんだけどなぁ。


ぶさいくろうさん、細かい手順ありがとうございます。

たしかに
-------->
IgnoreRemoteRequests = True
から
IgnoreRemoteRequests = False
--------<
Visual Studioのプロセス(devenv.exe)を終了したら
Workbookが開けなくなりました。

ところが、
-------->
HKCU\Software\Microsoft\Office\11.0\Excel\Options
REG_DWORD Options の bit flag 0x40 を切り替え。
--------<
を行った後に再度同じ現象を確認しようと思ったところ、
なぜか発生しなくなってしまいました(_ _;)

ちなみに現在のOptionsの値は0x47です。


IgnoreRemoteRequestsはレジストリのOptionsを変更するものだと
推測していたのですが、動作がさっぱり掴めなくなってしまいました(^^;


[ メッセージ編集済み 編集者: BlueField 編集日時 2007-02-22 15:55 ]
BlueField
会議室デビュー日: 2007/02/15
投稿数: 12
お住まい・勤務地: 茨城
投稿日時: 2007-02-23 12:40
引用:

スクリプトプログラマさんの書き込み (2007-02-22 17:20) より:
だから、3案も提示しているのに。。。
どれもVB側プロセスが突然終了しても大丈夫なように考えたんだけどなぁ。
まず、第一案を試してみれば?


スクリプトプログラマさんには大変感謝しております!
・・・そして、ご迷惑をお掛けしておりますm(_ _;)m

IgnoreRemoteRequestsをいじると
レジストリが変わるという話だったので
ずっと他の方の方法を試しておりました(^^;

どうやらレジストリのOptionsを更新するタイミングは
IgnoreRemoteRequestsの設定を変更したEXCEL.exeプロセスが
終了したとき(タスク等による強制終了を除く)に
書き込まれるみたいですね。
(プロパティ変更してもすぐに変わらなかったんで
「ナゼ?」と思ってずっと調べてました^^;)

もう少しIgnoreRemoteRequestsの動作を理解してから
スクリプトプログラマさんの案を有り難く試させて頂きます!m(_ _)m


[ メッセージ編集済み 編集者: BlueField 編集日時 2007-02-23 12:42 ]

スキルアップ/キャリアアップ(JOB@IT)