0

いつもお世話になっております。

最近、Outlookの起動が上手くいかないことが多く、Outlookからメールを送信する部分でスクリプトが無限待機状態になることが頻発しています。

(プロセス自体は起動していてもウィンドウが開かないため操作できずスクリプトも終了できない=エラーにもならないため後続処理or例外処理に飛ばない)

そこで下図のような流れでアプリケーションの起動を監視しようとしています。

このとき、ループの部分で「一定回数ループしたらエラー」とするのではなく「一定時間経過したらエラー」としようと思っています。

何か上手いやり方はありませんでしょうか。

<現状>

現在時刻から5分後を目標時刻と定め、目標時刻 - 現在時刻の時間差がマイナスになったらエラーとなるようにしようとしています。

こうすると、例えば現在時刻が23:58:00の場合は目標時刻が0:03:00となり、日付が変わるまで時間差が常にマイナスになってしまうため目標時刻側を補正する必要がでてきます。

加えて「時間差取得」のライブラリは基準時間、比較時間ともにフォーマットをhh:mm:ssにする必要があり、目標時刻が0:03:00の場合は頭にゼロを追加する必要があるなど、日付をまたいだ場合の処理が煩雑になりがちです。

これをスマートに解決できればという趣旨です。

この質問は解決済みのためクローズされています。
茄子天 ベストアンサーとして選択しました
回答とコメントは、会員登録(無料)で閲覧できるようになります。