web-dev-qa-db-ja.com

cleanmgr.exeがtmpファイルを削除しないようにする

バッチファイルを使用して毎日自動実行されるRシャイニーアプリをWindowsマシンでローカルに実行しています。最近、Rtmpディレクトリ/ tmp/RtmpXXXXXが削除され、アプリケーションが失敗するという問題が発生しました。

Warning in file(open = "w+b", encoding = "UTF-8") :
  cannot open file 
'C:\Users\Carlos\AppData\Local\Temp\Rtmp0maCtT\Rf140c40ab30be': No such file 
or directory  # deleted file
Warning in normalizePath(path.expand(path), winslash, mustWork) :
  path[1]="C:\Users\Carlos\AppData\Local\Temp\Rtmp0maCtT": The system cannot 
find the file specified  # deleted folder
Warning in file(open = "w+") :
  cannot open file 
'C:\Users\Carlos\AppData\Local\Temp\Rtmp0maCtT\Rf140c38044f8': No such file 
or directory
Warning: Error in file: cannot open the connection  # program crashes
Stack trace (innermost first):
    1: runApp
Error : cannot open the connection

procmon を実行すると、ディスククリーンアップによって一時ファイルがほぼ毎日自動的に削除され、アプリがクラッシュすることがわかりました。ダイアログボックスの設定のチェックを外しましたが、何も変わっていないようです。 cleanmgr.exeが自動的に実行されないようにする他の方法はありますか?

3
Carlos Bonilla

ディスククリーンアップとは、ディスクスペースが少ないときにトリガーされる自動ジョブを意味する場合、最優先事項は、ディスクスペースが少ない理由を見つけて、ディスクスペースを解放することです。 Windowsのスペースが不足すると、Windows自体に損傷を与える可能性がある危険な状態になります。

この自動的にスケジュールされたタスクを無効にするには:

  • タスクスケジューラを開く
  • タスクスケジューラライブラリ> Microsoft> Windowsにドリルダウンします。
  • DiskCleanupをクリックします
  • 右側のペインで、[無効]をクリックします。

別の関連する設定は、次のように無効にできる低ディスク容量警告です。

  • 開始regedit
  • キーHKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorerに移動します
  • Explorerがない場合は、Policiesを右クリックして新規>キーを選択し、Explorerという名前を付けて、選択されていることを確認します
  • 右ペインを右クリックして、新規> DWORD(32ビット)値を選択します。
  • 新しいエントリにNoLowDiskSpaceChecksという名前を付け、1の値を指定します
  • [OK]をクリックして、regeditを閉じます
2
harrymc