PR

【最新版で解決済】Screenpressoが勝手に終了・クラッシュする場合の対処法

ソフトウェア

記事執筆中にバージョン2.3.3がリリースされていることに気付いてアップデートしたらクラッシュしなくなりました。

が!せっかく書いたので執筆途中ですがアップすることにしました。
以下は対処法だったものです。


Screenpresso 2.3.2を起動したままにしていると、しばらく操作していない間に「ハンドルされていない例外」が発生し、そのまま終了するようになりました。キャプチャ中ではなく、放置した後にだけ落ちるのが厄介なところです。

調べた結果、私の環境では高度な設定のAutomaticRestartFalseに変更すると、時間経過後のクラッシュが発生しなくなりました。

先に要点だけまとめると、次の症状なら同じ設定を確認する価値があります。

  • Screenpresso 2.3.xへ更新してから発生した
  • キャプチャや編集の最中ではなく、操作せずに放置した後に終了する
  • Windowsのイベントログに.NET Runtimeの未処理例外が残っている
  • 障害モジュールとしてKERNELBASE.dll、例外コードとして0xe0434352が記録されている

ただし、Screenpresso公式が2.3.2固有の不具合として公表しているわけではありません。この記事では、実際に再現と設定変更を試した結果から「自動再起動処理が引き金になった可能性が高い」と判断しています。

解決方法:AutomaticRestartをFalseにする

Screenpressoの設定画面を開き、次の手順で自動再起動を無効にします。画面上の表記は、使用している言語やバージョンによって多少異なる場合があります。

  1. Windowsの通知領域にあるScreenpressoのアイコンを右クリックする
  2. Screenpressoの設定画面を開く
  3. 「高度な設定(Advanced settings)」を開く
  4. 設定一覧からAutomaticRestartを探す
  5. 値をTrueからFalseへ変更する
  6. 設定画面を閉じ、Screenpressoを一度終了して起動し直す

変更後は、これまでクラッシュが起きていた時間より長くScreenpressoを放置し、勝手に終了しないか確認してください。私の環境では、この変更後に時間経過によるクラッシュは再発しなくなりました。

AutomaticRestartとは

AutomaticRestartは、Screenpressoを長期間起動したままにした際のメモリ使用量を抑えるため、操作されていないタイミングでアプリを自動的に再起動する機能です。

Screenpresso公式サポートのメモリ使用量に関する説明にも、自動再起動を無効化するにはAutomaticRestartFalseにすると記載されています。

なお、再起動までの時間は公式資料同士でも一致していません。

そのため、この記事では「一定時間操作しなかった後」と表現しています。環境やバージョンによって実行条件が異なる可能性もあります。

原因を切り分けた流れ

放置したときだけクラッシュしていた

通常のスクリーンショット撮影や画像編集は問題なく使えていました。ところが、Screenpressoを起動したまま操作せずに置いておくと、時間経過後に未処理例外が発生して終了します。

操作内容ではなく経過時間に連動していたため、タイマーで実行される処理を疑いました。そこで見つかったのがAutomaticRestartです。

Windowsのイベントログを確認した

イベントビューアーの「Windowsログ」→「Application」には、クラッシュした時刻に次の情報が記録されていました。

  • .NET Runtimeの未処理例外
  • 例外コード0xe0434352
  • 障害モジュールKERNELBASE.dll

0xe0434352は.NETアプリで例外が処理されなかった際に現れることがあるコードです。これだけで不具合箇所を特定できるわけではありませんが、Screenpressoが正常な終了処理ではなく、例外によって落ちたことを確認する手掛かりにはなりました。

設定変更の前後で再現を比べた

AutomaticRestart=Trueでは放置後にクラッシュし、Falseへ変更した後は同じ使い方を続けても発生しませんでした。

この比較から、キャプチャや編集ではなく、一定時間後に動く自動再起動処理が直接の引き金だったと考えています。ただし、例外のstack traceやScreenpressoの内部実装までは確認できていないため、根本原因の断定はできません。

Screenpresso 2.3.xで変わった点

Screenpresso 2.3.0の公式リリースノートによると、2.3.0では配布方式がMSIXへ変更され、従来のポータブルモードが廃止されました。アプリ本体も新しい.NETランタイムとライブラリへ移行しており、内部変更の大きいバージョンです。

今回の症状は2.3.xへの更新後に発生したため、MSIX版の再起動処理やパッケージからの再起動との組み合わせが影響した可能性はあります。ただし、これは状況からの推測です。公式発表済みの原因ではありません。

Screenpresso 2.3.2の公式リリースノートに記載されている変更は言語関連の修正のみで、2026年8月3日時点では、この自動再起動時のクラッシュに関する記載は確認できませんでした。

AutomaticRestartを無効にする際の注意点

この設定をFalseにすると、Screenpressoがメモリ使用量を抑えるために用意している自動再起動も止まります。長期間起動したまま使う場合は、タスクマネージャーでメモリ使用量を確認し、ときどき手動でScreenpressoを再起動してください。

また、今後のアップデートで問題が修正される可能性があります。新しいバージョンへ更新した後はリリースノートを確認し、必要であればAutomaticRestart=Trueへ戻して再発しないか試すとよいでしょう。

設定を変えてもクラッシュする場合は、今回とは別の原因が考えられます。その場合は「放置後だけ落ちるのか」「特定の操作で落ちるのか」を分け、イベントログの発生時刻とScreenpressoのバージョンを確認すると切り分けやすくなります。

まとめ

Screenpresso 2.3.2が一定時間後に勝手に終了する症状は、私の環境ではAutomaticRestart=Falseに変更すると解消しました。再現条件と設定変更前後の結果から、自動再起動処理がクラッシュの引き金になった可能性が高いと判断しています。

同じように「操作中は問題ないのに、放置すると落ちる」という場合は、まずAutomaticRestartの設定を確認してみてください。

コメント

タイトルとURLをコピーしました