1

diskpart を使用して VHD をフォルダー (ジャンクション) にマウントしています。

VHD をアンマウントした後、FileSystemObject を使用してフォルダーを削除する必要があります。

 var vhdPath = "D:\SomeVhd.vhd";   
 var fsObj = new ActiveXObject("Scripting.FileSystemObject");
 var TypeLib = WScript.CreateObject("Scriptlet.TypeLib");
 var vhdmountpoint = fsObj.GetDriveName(vhdPath) + "\\" + TypeLib.Guid;

 //Mount with diskpart here, vhdmountpoint is now a junction
 //Dismount with diskpart here, vhdmountpoint still a junction

 if (fsObj.FolderExists(vhdmountpoint)) { //returns true!
     fsObj.DeleteFolder(vhdmountpoint); //Returns path not found
  }

何か不足していますか?

PS

次のようにして、この問題を回避しました。

 var shell = WScript.CreateObject("WScript.Shell");
 shell.Run("cmd /c rmdir " + vhdmountpoint);

それはハックとしてカウントされると思います。

4

0 に答える 0