OpusApp
クラス名のトップレベルウィンドウを検索してインストールを続ける前に、開いているWordウィンドウを閉じるInnoSetupインストーラスクリプトがあります。また、スクリプトは、OpusApp
クラス名を持つ非表示のWordウィンドウを開くため、誤ってOutlookの作成ウィンドウを検出して閉じます。 (私はWinListerユーティリティを使用して、開いているウィンドウのクラス名を調べます)ウィンドウクラス名を調べてOutlookとWordを区別する
「実際の」Wordウィンドウと非表示のWordウィンドウを持つOutlook作成ウィンドウを区別する方法はありますか?インストーラスクリプトから余分なツールを呼び出す必要がある場合は、おそらくそれを処理できます。ところで
私は私のインストーラがOpusApp
ウィンドウを閉じてみましょうする場合、は、Outlookメール作成ウィンドウはつまり、ユーザーは任意のより多くのテキストを表示し、編集することはできません(クラッシュしてしまいますが、テキストが失われることはありません) - Wordアドインをインストールすることの望ましくない副作用!
開いているアプリケーションを閉じるための試行はお勧めできません。 Word 2016で動作しても、ウィンドウクラス名が "OpusApp2"なので、Word 2017では機能しないことがあります。 Wordが開いているかどうかを検出してから、Wordを閉じてから続行するようにユーザーに依頼します。多くのインストーラがこのようにしています。 –
@MichaelWalzよく考えて、私はそれについて考えるでしょう。注:Officeのクラス名は、PowerPointを除いて何年も変わっていないようです。もちろん、あなたは正しいのですが、MSはいつでもそれを変更することができます。 – bovender
なぜあなたはそれを必要としますか? Wordにファイルがロックされている場合、Inno Setupはこれを検出して自動的にWordを閉じます。 –