come sapete la lettera dell'unità ramdisk non si può assegnare se non caricando un file immagine e se avete lasciato inserite delle periferiche usb è chiaro i problemi che si generano
ho cercato un pò in giro, non c'era niente di pronto e mi son scritto due righe di codice
basta aggiungerlo con i criteri di gruppo (gpedit.msc) tra gli script da eseguire allo startup o aggiungerlo con le operazioni pianificate da eseguire ad ogni startup
se può servire...
ho cercato un pò in giro, non c'era niente di pronto e mi son scritto due righe di codice
basta aggiungerlo con i criteri di gruppo (gpedit.msc) tra gli script da eseguire allo startup o aggiungerlo con le operazioni pianificate da eseguire ad ogni startup
se può servire...
Codice:
'
' ramdisk.vbs
'
' Change Dataram RAMDisk's drive letter on os startup
'
' Set these constants to change the RAMDisk's drive letter
Const RAMDISK_VOLUMENAME = "RAMDISK" ' RAMDisk volume label
Const RAMDISK_DRIVELETTER = "X" ' Drive letter to assign
' DON'T MODIFY ---> START
Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
Set objDrives = objFSO.Drives
dblTimer = Timer
Do
' Find the RAMDisk
For Each objDrive In objDrives
If objDrive.DriveType = 2 Then ' HD
If UCase(objDrive.VolumeName) = UCase(RAMDISK_VOLUMENAME) Then
' Create DISKPART script file
Set objF = objFSO.CreateTextFile("ramdisk.s", true)
objF.WriteLine "select volume " & objDrive.DriveLetter
objF.WriteLine "assign letter = " & RAMDISK_DRIVELETTER
objF.Close
' Change the drive letter
Set objShell = WScript.CreateObject("WScript.Shell")
objShell.Run "diskpart /s ramdisk.s",, True ' Synchronous call
' Delete temporary file
objFSO.DeleteFile("ramdisk.s")
' Done
Exit Do
End If
End If
Next
' If no RAMDisk found before timeout then stop the script
If Timer - dblTimer >= 180 Then ' 3 minutes
Exit Do
End If
' Wait for RAMDisk mounting
WScript.Sleep(500)
Loop
' DON'T MODIFY ---> END
' ADD HERE YOUR SCRIPT