Find
installed application in my PC using C#.Net
Some time we
need to know before installing our new setup file it’s already installed or not
in the computer. In the below examples I have explained how to get list of
application installed in the system (OS) using C#.Net 2.0. The Example 1 will
give you more quick result compare then Example 2.
private void Form1_Load(object
sender, EventArgs e)
{
CheckInstalledApplication();
LoadSoftwareList();
}
In the Example1 explained get the registory access and display the list of
installed application in the windows system.
Example 1:
//Check the list
of application installed in the OS
private
bool CheckInstalledApplication()
{
string
SoftwareKey = @"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall";
string
strDispName;
List<string> lsRegistory = new
List<string>();
using
(RegistryKey rkRegistryKeyOne = Registry.LocalMachine.OpenSubKey(SoftwareKey))
{
foreach
(object varName in
rkRegistryKeyOne.GetSubKeyNames())
{
using
(RegistryKey rkRegistryKeyTwo =
rkRegistryKeyOne.OpenSubKey(varName.ToString()))
{
strDispName = Convert.ToString(rkRegistryKeyTwo.GetValue("DisplayName"));
if (!string.IsNullOrEmpty(strDispName))
{
lsRegistory.Add(strDispName + " --->
" + Convert.ToString(rkRegistryKeyTwo.GetValue("DisplayVersion")));
}
}
}
}
lsRegistory.Sort();
listBox1.DataSource =
lsRegistory.ToArray();
return
true;
}
In the Example2 explained using management object get the win32 product
list from the windows OS.
Example 2:
using
System.Management;
private
void LoadSoftwareList()
{
listBox1.Items.Clear();
ManagementObjectCollection
moReturn;
ManagementObjectSearcher
moSearch;
moSearch = new
ManagementObjectSearcher("Select * from Win32_Product");
moReturn = moSearch.Get();
foreach
(ManagementObject mo in moReturn)
{
listBox1.Items.Add(mo["Name"].ToString());
}
}
Note: Thanks to Antony
No comments:
Post a Comment