スリープから勝手に復帰しますNo.08722
tko さん 21/10/15 01:31
 
Windows10において秀丸リマインダを使用している者です。

「秀丸リマインダの設定」において、「PCがサスペンド状態でもリマインダの実行を
行う」にチェックしますと、サスペンドから勝手に復帰してしまうようになって困っ
ています。

イベントビューアーで確認しますと
スリープ状態の解除元: タイマー - HmReminder.exe
と出ており、確かに解除の原因が HmReminder.exeということになっています。
「動作ログの表示」で確認しますと、作っていないリマイダがWindowsというリマイ
ンダ名で作成され動作しています。

この事態をどう解決したらよいでしょうか。



[ ]
RE:08722 スリープから勝手に復帰しますNo.08723
tko さん 21/10/15 01:36
 
今確認したら、「PCがサスペンド状態でもリマインダの実行を行う」にチェックを入
れなくても同じ現象が起こりました。
インストールするだけでこのようになるようです。


>Windows10において秀丸リマインダを使用している者です。
> ......
>

[ ]
RE:08723 スリープから勝手に復帰しますNo.08726
秀まるお2 さん 21/10/15 10:12
 
 秀丸リマインダのせいでスリープから勝手に復帰する理由ですが、ソースコードの
見直しやテストなどして調べてみました。

 まず、秀丸リマインダは、「SetWaitableTimer」というWindowsのAPIを使ってス
リープからの復帰を指示してまして、このAPI呼び出しは、「PCがサスペンド状態で
もリマインダの実行を行う」がONの時しか呼び出してないようでした。
 (一応、僕が見直し&テストした限りでは・・・)

 それと、この復帰指示は、パソコンがスリープ状態に入ろうとした時に呼び出すよ
うです。さらに、このAPI呼び出しをした場合は動作ログに

2021/10/15 09:41:58 復帰タイマー設定(2021/10/21 8:58:59)

 みたいな「復帰タイマー設定」って記録が出るはずになります。

 一応、僕の所でテストした限りは、「PCがサスペンド状態でも・・・」のオプショ
ンOFFなら大丈夫なはずのようでしたけども、tkoさんの所でも動作ログを開いて見て
みてほしいです。

 動作ログですが、秀丸リマインダ設定の「基本」ページの中にある「データフォル
ダ」のテキストをコピーして、エクスプローラのアドレスバーに貼り付けしてそこを
開くと、そこに

 hmreminder.log

 のようなファイルがあるのでそれをメモ帳や秀丸エディタで開くと見られます。

 例えばパソコンをスリープさせてから復帰すると、そこに、

2021/10/15 09:41:58 Windows が中断状態になりました。
2021/10/15 09:41:58 復帰タイマー設定(2021/10/21 8:58:59)
2021/10/15 09:42:18 Windows が中断状態から復帰しました。

 のような記録が出るようであれば、たしかにタイマーがセットされた記録になりま
す。

 一応、僕の所では例のオプションOFFなら

2021/10/15 09:48:56 Windows が中断状態になりました。
2021/10/15 09:49:17 Windows が中断状態から復帰しました。

 みたいな記録しか出ない所ではありました。

 秀丸リマインダのバージョンは、最新版で確認したのですが、もしバージョンが古
いようでしたら念のため最新版に入れ替えて試してみてほしいです。

------------------------------------------------------
 もう1つ、緊急避難的な対策が1つありました。

    https://mikit-tz.com/windows10-sleep-cancellation-howto/

 にあるやり方で、「スリープ解除タイマー」って設定を「無効」にすることで、無
理矢理ですが、スリープから勝手に復帰しなく出来るようです。とにかくスリープか
ら勝手に復帰しないでほしい場合はこれでなんとかしていただく手もありかと思いま
す。

[ ]
RE:08726 スリープから勝手に復帰しますNo.08741
tko さん 21/10/16 01:13
 
わたしのPCでは、その
>2021/10/16 00:47:37 Windows が中断状態から復帰しました。
に当たるところで、勝手にスリープから復帰しているようなのです。


本日実験した結果は次のとおりです。
1)秀丸リマインダを起動しました。
2)「PCがサスペンド状態でも・・・」をオンにしました。
3)「テスト」というリマインダを作成しました。
4)PCをスリープにしました。
5)自動的にスリープが解除されました。
6)時間通りにメールが送られてきました。
7)PCをスリープにしました。
8)約1分後に勝手にスリープから復帰しました。
9)PCを再びスリープにしました。
10)約1分後に勝手にスリープから復帰しました。
12)秀丸リマインダを終了しました。

この間のhmreminder.logは以下のとおりです。
2021/10/16 00:40:09 秀丸リマインダが起動されました。
2021/10/16 00:42:18 Windows が中断状態になりました。
2021/10/16 00:42:18 復帰タイマー設定(2021/10/16 0:43:18)
2021/10/16 00:43:20 Windows が中断状態から復帰しました。
2021/10/16 00:44:20 ネットワーク有効
2021/10/16 00:44:26 『テスト』『simon.***.*****@i.softbank.jp』『2021/10/16
00:43:00』を実行しました。
2021/10/16 00:44:26 『テスト』『simon.***.*****@i.softbank.jp』『2021/10/16
00:43:00』を削除しました。
2021/10/16 00:46:18 Windows が中断状態から復帰しました。
2021/10/16 00:47:37 Windows が中断状態から復帰しました。
2021/10/16 00:51:03 秀丸リマインダが終了しました。


PCのイベントビューアーの記録では、確かに46:18と47:37にスリープから復帰して
います。
------
システムは低電力状態から再開しました。
スリープ時間: ‎2021‎-‎10‎-‎15T15:45:17.343773100Z
スリープ解除時間: ‎2021‎-‎10‎-‎15T15:46:18.305
891100Z
スリープ状態の解除元: タイマー - HmReminder.exe
------
システムは低電力状態から再開しました。
スリープ時間: ‎2021‎-‎10‎-‎15T15:46:34.453548900Z
スリープ解除時間: ‎2021‎-‎10‎-‎15T15:47:37.787
858600Z
スリープ状態の解除元: タイマー - HmReminder.exe
------

ということで、秀まるお2さんのところで、
>2021/10/16 00:47:37 Windows が中断状態から復帰しました。
に当たる部分でスリープから勝手に復帰していないか、ご確認いただけませんでしょ
うか。





> 秀丸リマインダのせいでスリープから勝手に復帰する理由ですが、ソースコード
>の見直しやテストなどして調べてみました。
> ......
> にあるやり方で、「スリープ解除タイマー」って設定を「無効」にすることで、
>無理矢理ですが、スリープから勝手に復帰しなく出来るようです。とにかくスリー
>プから勝手に復帰しないでほしい場合はこれでなんとかしていただく手もありかと
>思います。

[ ]
RE:08741 スリープから勝手に復帰しますNo.08744
秀まるお2 さん 21/10/18 08:38
 
 お手数かけてすみません。

 連絡いただいた手順でテストしてみたら、たしかに同じように勝手にスリープから
復帰してしまいました。

 今までこちらでテストした例では、常に何らかの復帰タイマーがセットされるよう
な形にしかなってなかったのかなぁと思います。例えば1日1回、特定の時間に何か
メールを発信するような項目があれば、スリープする度に、必ず何らかの復帰タイ
マーがセットされます。ところが今回のようなテストをした場合だと、メールの送信
が実行された後は何も復帰用のタイマーがセットされずにスリープに至り、結果とし
て最初にセットした復帰タイマーがそのまま残って、それのせいで勝手に復帰してる
可能性が高いかなぁと思います。

 たぶん復帰タイマーを毎回削除するとかの処理が必要なのかなぁと思います。その
辺調べてなんとか対処させていただきます。

[ ]
RE:08744 スリープから勝手に復帰しますNo.08745
秀まるお2 さん 21/10/18 14:20
 
 バグ修正して今アップロードしました。

https://hide.maruo.co.jp/software/bin/hmrem152_signed.exe

 たしかにスリープから復帰する用のタイマーが残ってしまってて、スリープしても
また勝手に復帰してしまってました。サスペンドモードから復帰した時や、そもそも
的にスリープに入る時で特に何もタイマーセットする必要が無い場合に、もし前回セ
ットしたタイマーが残ってたら終了させるようにしました。

 よろしくお願いします。

[ ]
RE:08745 スリープから勝手に復帰しますNo.08746
tko さん 21/10/19 00:27
 
素早く対応してくださり、本当にありがとうございました。
今後ともよろしくお願いいたします。


> バグ修正して今アップロードしました。
> ......
> よろしくお願いします。

[ ]