C#通過windows注冊表獲取軟件清單的方法
更新時(shí)間:2015年07月15日 15:11:29 作者:搶小孩糖吃
這篇文章主要介紹了C#通過windows注冊表獲取軟件清單的方法,涉及C#針對注冊表的訪問讀取與遍歷操作技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
本文實(shí)例講述了C#通過windows注冊表獲取軟件清單的方法。分享給大家供大家參考。具體如下:
foreach (string SoftwareName in Object.SoftwareList())
{
textBox.Text += SoftwareName + Environment.NewLine;
}
////////////////////////////////////////////////////////////////////////
/// <summary>
/// Windows系統(tǒng)獲取軟件列表
/// </summary>
/// <returns>String [] softwareList</returns>
public String [] SoftwareList()
{
String[] softwareList = null;
//動(dòng)態(tài)數(shù)組
ArrayList list = new ArrayList();
try
{
//打開注冊列表卸載選項(xiàng)
//SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
RegistryKey Key = Microsoft.Win32.Registry.LocalMachine.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall");
if (Key != null)//如果系統(tǒng)禁止訪問則返回null
{
foreach (String SubKeyName in Key.GetSubKeyNames())
{
//打開對應(yīng)的軟件名稱
RegistryKey SubKey = Key.OpenSubKey(SubKeyName);
if (SubKey != null)
{
String SoftwareName = SubKey.GetValue("DisplayName", "Nothing").ToString();
//如果沒有取到,則不存入動(dòng)態(tài)數(shù)組
if (SoftwareName != "Nothing")
{
list.Add(SoftwareName);
}
}
}
//強(qiáng)制轉(zhuǎn)換成字符串?dāng)?shù)組,防止被修改數(shù)據(jù)溢出
softwareList = (string[])list.ToArray(typeof(string));
}
}
catch (Exception err)
{
Console.WriteLine("出錯(cuò)信息:" + err.ToString());
}
return softwareList;
}
希望本文所述對大家的C#程序設(shè)計(jì)有所幫助。
相關(guān)文章
C#使用FileSystemWatcher控件實(shí)現(xiàn)的文件監(jiān)控功能示例
這篇文章主要介紹了C#使用FileSystemWatcher控件實(shí)現(xiàn)的文件監(jiān)控功能,結(jié)合實(shí)例形式分析了C# FileSystemWatcher組件的功能及監(jiān)控文件更改情況的具體使用技巧,需要的朋友可以參考下2017-08-08
C#跨平臺開發(fā)之使用C/C++生成的動(dòng)態(tài)鏈接庫
這篇文章介紹了C#跨平臺開發(fā)之使用C/C++生成的動(dòng)態(tài)鏈接庫,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-01-01
C#利用GDI+給圖片添加文字(文字自適應(yīng)矩形區(qū)域)
這篇文章主要給大家介紹了關(guān)于C#利用GDI+給圖片添加文字(文字自適應(yīng)矩形區(qū)域)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。2018-04-04
C#十六進(jìn)制字符串轉(zhuǎn)十進(jìn)制int的方法
這篇文章主要介紹了C#十六進(jìn)制字符串轉(zhuǎn)十進(jìn)制int的方法,涉及C#操作數(shù)制轉(zhuǎn)換的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-03-03
C#實(shí)現(xiàn)遞歸調(diào)用的Lambda表達(dá)式
這篇文章介紹了C#實(shí)現(xiàn)遞歸調(diào)用的Lambda表達(dá)式,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-06-06

