c#不使用windows api函數(shù)打開我的電腦和獲取電腦驅動器信息
打開我的電腦
System.Diagnostics.Process.Start("explorer.exe", "::{20D04FE0-3AEA-1069-A2D8-08002B30309D}");
第二個參數(shù)也可為完整路徑,
通過查詢注冊表拿到的一些完整路徑例子:
public string GetWindowsPath(string path)
{
RegistryKey folders;
folders = OpenRegistryPath(Registry.CurrentUser, @"\software\microsoft\windows\currentversion\explorer\shell folders");
return folders.GetValue(path).ToString();
}
private RegistryKey OpenRegistryPath(RegistryKey root, string s)
{
s = s.Remove(0, 1) + @"\";
while (s.IndexOf(@"\") != -1)
{
root = root.OpenSubKey(s.Substring(0, s.IndexOf(@"\")));
s = s.Remove(0, s.IndexOf(@"\") + 1);
}
return root;
}
//調(diào)用
GetWindowsPath("關鍵字");
關鍵字比如:Windows用戶桌面路徑(Desktop),Windows用戶字體目錄路徑(Fonts),Windows用戶網(wǎng)絡鄰居路徑(Nethood),Windows用戶我的文檔路徑(Personal)...
具體的在注冊表里面查找.
以上是直接打開我的電腦的方法,當然也可以直接獲取我的電腦的驅動器,方法如下:
DriveInfo[] allDrives = DriveInfo.GetDrives();
foreach (DriveInfo d in allDrives)
{
messagebox.show(d.RootDirectory.FullName+"啟動器所有信息在DriveInfo對象里都能找到");
messagebox.show(驅動器的類型+DriveTypeToCH(d.DriveType.ToString()));
}
這里就要說到啟動器的類型了
#region 驅動類型轉換
/// <summary>
/// 驅動類型轉換
/// </summary>
/// <param name="_String"></param>
/// <returns></returns>
private string DriveTypeToCH(string _String)
{
string ToCh = "";
switch (_String.ToLower())
{
case "unknown":
ToCh = "其它";
break;
case "removable":
ToCh = "移動設備";
break;
case "fixed":
ToCh = "硬盤";
break;
case "network":
ToCh = "網(wǎng)絡硬盤";
break;
case "cdrom":
ToCh = "CD-ROM";
break;
case "ram":
ToCh = "RAM磁盤";
break;
case "norootdirectory":
ToCh = "";
break;
default:
break;
}
return ToCh;
}
#endregion
也可以通過windows api得到,我還是更喜歡這種方法
- C# Windows API應用之基于FlashWindowEx實現(xiàn)窗口閃爍的方法
- C#獲取進程的主窗口句柄的實現(xiàn)方法
- C#實現(xiàn)利用Windows API讀寫INI文件的方法
- C#中調(diào)用Windows API的技術要點說明
- C#調(diào)用windows api關機(關機api)示例代碼分享
- c#調(diào)用api控制windows關機示例(可以重啟/注銷)
- C#中隱式運行CMD命令行窗口的方法
- C# WinForm中禁止改變窗口大小的方法
- C# Winform中實現(xiàn)主窗口打開登錄窗口關閉的方法
- C# WinForm窗口最小化到系統(tǒng)托盤
- 解決C#獲取鼠標相對當前窗口坐標的實現(xiàn)方法
- C# Winform 讓整個窗口都可以拖動
- C# Windows API應用之基于GetDesktopWindow獲得桌面所有窗口句柄的方法
相關文章
C#實現(xiàn)Json轉DataTable并導出Excel的方法示例
這篇文章主要介紹了C#實現(xiàn)Json轉DataTable并導出Excel的方法,結合實例形式總結分析了Json轉換DataTable,以及DataTable導出Excel相關操作技巧,需要的朋友可以參考下2019-02-02
UnityShader使用Plane實現(xiàn)翻書效果
這篇文章主要為大家詳細介紹了UnityShader使用Plane實現(xiàn)翻書效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-07-07
C# wpf Canvas中實現(xiàn)控件拖動調(diào)整大小的示例
本文主要介紹了C# wpf Canvas中實現(xiàn)控件拖動調(diào)整大小的示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-08-08
C# 使用CancellationTokenSource取消多線程
有時間我們在使用多線程的時候,需要取消線程的執(zhí)行,可以使用CancellationTokenSource來取消對Task開辟多線程的取消,感興趣的可以了解一下2021-08-08

