Browse Source

commit: guid label to identify volume

HOME 3 years ago
parent
commit
d097b60ae8
1 changed files with 5 additions and 4 deletions
  1. 5 4
      SvdCli/CliProgram.cs

+ 5 - 4
SvdCli/CliProgram.cs

@@ -219,19 +219,20 @@ namespace SvdCli
                         if (op == "tempntfsramdisk") FsMaker.MakeNtfs(storage, "RamDisk", n => n.CreateDirectory("Temp"));
                         if (op == "ztempntfsramdisk")
                         {
-                            FsMaker.MakeNtfs(storage, "RamDisk", n => n.CreateDirectory("Temp"));
+                            var guid = Guid.NewGuid().ToString("N");
+                            FsMaker.MakeNtfs(storage, guid, n => n.CreateDirectory("Temp"));
                             storage.Mounted += delegate
                             {
                                 var volumes = new ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM Win32_Volume");
                                 foreach (ManagementObject volume in volumes.Get())
                                 {
                                     volume.Get();
-                                    var letter = volume["DriveLetter"];
-                                    var label = volume["Label"];
-                                    if (label is string str && str == "RamDisk")
+                                    if (volume["Label"] is string str && str == guid)
                                     {
+                                        volume["Label"] = "RamDisk";
                                         volume["DriveLetter"] = "Z:";
                                         volume.Put();
+                                        break;
                                     }
                                 }
                             };