WM_QUERYENDSESSION捕まえたときに大量の処理をした場合、途中でWindowsが終了してしまうということはないのでしょうか?TWMQueryEndSession.Sourceを0にすると終了をキャンセルできるときいたんですが、実際そのまま終了してしまいました。
SourceじゃなくてResultではないですか?
※作成する前に利用規約をご確認ください。