MENU

RAMディスクはもうやめた

 先日Windows10の大型アップデートがあって、そのときにRAMディスクの割り当てが外れていたらしい。今まで気づかなかったが、「BUFFALO RAMDISK ユーティリティー」で作成してあったRAMディスクドライブが消えていた。

 そこで割り当て直して再起動したら、Windows10にアップグレードした時のようにブルースクリーンが発生。その時と同じようにセーフモードで起動した後、割り当てを外して再起動したら無事に起動するようになった。

 たぶん RAMDISK ユーティリティー を再インストールすればまた使えるようになると思うし、別のツールを試すことも考えたが、なんかもうデメリットの方が多い気がしてきてやめた。SSDの寿命はやっぱり気になるが、今年買い替えた「Sandisk SSD Extreme PRO」には10年保証がついている。

 シャットダウンすれば完全に消える一時フォルダとしての用途も、フォルダ内を空にするvbsをスタートアップに登録することで代用できた。(見よう見まねで書いたので、このまま使うのは危険かもしれない。

'指定したフォルダを空にする

Dim path: path = "D:\Temp" 'フォルダの場所を指定
Dim fso
Dim folder
Dim tempFile
Dim tempFolder

set fso = CreateObject("Scripting.FileSystemObject")
set folder = fso.getFolder(path)

'すべてのファイルを削除
For Each tempFile In folder.Files
     fso.deletefile tempFile.Path, true 'true : 読み取り専用でも削除 ①
Next

'すべてのフォルダを削除
For Each tempFolder In folder.SubFolders
     fso.deleteFolder tempFolder.Path, true '②
Next

 ①の部分を下のように書くと、「Sub プロシージャを呼び出すときに、かっこを使うことはできません」というエラーが出る。

 fso.deletefile (tempFile.Path, true)

かっこを外すか、かっこでくくる場合は戻り値を受け取る必要があるらしい。②も同様。

参考

勉強とガジェット: VBScriptでフォルダ配下のファイルを全削除する

DeleteFile メソッド

【Windows 7】Sub プロシージャを呼び出すときに、かっこを使うことはできません というエラーで vbscript の実行が失敗する | TIPS , FAQ