PDA

View Full Version : آموزش: مقاله : نحوه کار با رجیستری در سی شارپ ( فارسی)



ostovarit
چهارشنبه 19 آبان 1389, 14:10 عصر
مقاله زیر در رابطه با نحوه کار با رجیستری در سی شارپ به زبان فارسی هست.

ostovarit
چهارشنبه 19 آبان 1389, 16:56 عصر
با توجه به مقاله ای که گذاشتم از طریق کد زیر و با استفاده از رجیستری میشه نام برنامه های نصب شده رو جستجو کرد :


String srcPath = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Unin stall";
RegistryKey rk = Registry.LocalMachine.CreateSubKey(srcPath);
string[] programs = rk.GetSubKeyNames();
for (int i = 0; i < rk.SubKeyCount; i++)
{
String AppPath = srcPath + "\\" + programs[i];
RegistryKey regKeyAppRoot = Registry.LocalMachine.CreateSubKey(AppPath);
if (regKeyAppRoot.ValueCount > 0)
{
String name = (String)regKeyAppRoot.GetValue("DisplayName");
if (name == null)
{
regKeyAppRoot.Close();
continue;
}
if (name.Contains("Yahoo"))
{
MessageBox.Show(name);
}
}
regKeyAppRoot.Close();
}
استفاده های زیادی داره برای مثال میتونید قبل از اجرای برنامه ی جانبی نصب بودنش رو چک کنید در کد بالا نرم افزار یاهو چک شده ...
یا اگر دو برنامه مکمل هم نوشته اید میتونید چک کنید که برنامه اول یا دوم نصب هست یا نه ...

ostovarit
پنج شنبه 20 آبان 1389, 18:38 عصر
با کمک رجیستری لیست برنامه هایی رو که در زمان بالا اومدن ویندوز اجرا میشن رو میتونید بدست بیارید:


ManagementObjectSearcher s = new ManagementObjectSearcher("SELECT * FROM Win32_StartupCommand");
foreach (ManagementObject service in s.Get())
{
listBox1.Items.Add((string)service["Command"]);
}
یک لیست باکس با نام listBox1 در صفحه قرار بدید و کد رو در فرم لود یا کلیک یک باتن بزارید ...

شفیعی
دوشنبه 08 اسفند 1390, 12:16 عصر
سلام
از توی رجیستری به چه شکلی میشه مسیری را که یک برنامه در انجا نصب شده است بدست آورد؟

sor.na10
چهارشنبه 24 خرداد 1391, 18:27 عصر
چگونه با استفاده از كدهاي سي شارپ رجيستري را مي توان بست كه امكان مشاهده ي آن نباشد