プログラムから復元ポイントが作れない

以前「wmicで復元ポイントを作成する」という記事を書いたのだが、これをWindows10で実行すると、復元ポイントが作成されずに処理が戻ってしまう。エラーとかも何もなし。

ちょっと調べてみたら、Windows8から仕様が変わったらしく、過去24時間以内に1つでも復元ポイントが作成されていたら、新しいのを作らずにスルーするようになった模様。

Why the "create restore point" script work differently on Windows 7 and on Windows 10/8.1

そもそも復元ポイントはWMIを経由しなくてもWindows APISRSetRestorePointを叩けば作れるんだな。知らんかった。

追記(2017/05/15)

PowerShellなら Checkpoint-Computer というcmdletを使って復元ポイントを作れる。

# 作成
Checkpoint-Computer -Description '理由をここに書く'
# 閲覧(一番日付が新しい復元ポイントを表示)
Get-ComputerRestorePoint | Sort-Object CreationTime | Select-Object -Last 1