我正在創建一個WPF應用程序,其中應檢查是否存在多個映射的驅動器。代碼很簡單:當以管理員身份運行時,DriveInfo.GetDrives()未返回映射的驅動器
DriveInfo[] systemDrives = DriveInfo.GetDrives();
foreach (DriveInfo i in systemDrives)
{
if ((i.Name.Contains("V")) && (i.IsReady))
{
result = true;
break;
}
}
映射的驅動器映射爲所有用戶。上面的代碼在以普通用戶身份運行時工作正常,但是Visual Studio 2010以管理員身份運行,GetDrives方法僅返回固定驅動器和DVD驅動器,但不返回映射驅動器。如果可執行文件以管理員身份運行,則會發生相同情況任何想法,爲什麼這可能會發生?
謝謝你,克里斯謝恩。這部分代碼是檢查映射驅動器的代碼,它嵌入在安裝程序中。我以管理員身份運行代碼,並以可視方式驗證映射的驅動器在那裏。通過上面的代碼時,我仍然沒有看到V映射驅動器。因爲這是在Windows 7上測試的,正如你所提到的,這可能是「按設計」。我嘗試了上面的代碼和Windows 2008操作系統下具有管理權限的帳戶下相同的安裝程序,並且映射的驅動器檢測得很好。 – LPena