我正在尝试通过 C# 中的 imdisk 创建 RAM 目录。由于 cmd 命令类似于:imdisk -a -s 512M -m X: -p "/fs:ntfs /q /y"
我查找了如何使用 C# 处理 cmd 命令,并发现了一些关于 ProcessStartInfo() 的提示。这个类几乎按照我想要的方式工作,但是由于 imdisk 需要管理员权限,所以我有点卡住了。即使代码块无例外地执行,我在 Windows 资源管理器中也看不到任何新设备。
try
{
string initializeDisk = "imdisk -a ";
string imdiskSize = "-s 1024M ";
string mountPoint = "-m "+ MountPoint + " ";
string formatHdd = "-p '/fs:ntfs /q /y' ";
SecureString password = new SecureString();
password.AppendChar('0');
password.AppendChar('8');
password.AppendChar('1');
password.AppendChar('5');
ProcessStartInfo procStartInfo = new ProcessStartInfo();
procStartInfo.UseShellExecute = false;
procStartInfo.CreateNoWindow = true;
procStartInfo.RedirectStandardError = true;
procStartInfo.FileName = "cmd";
procStartInfo.Verb = "runas";
procStartInfo.UserName = "Admin";
procStartInfo.Password = password;
procStartInfo.Arguments = initializeDisk + imdiskSize + mountPoint + formatHdd;
Process.Start(procStartInfo);
catch (Exception objException)
{
Console.WriteLine(objException);
}
我希望有人能给我一点提示,现在我没有想法。