چک کردن .net framework (کار با رجیستری)

swsehsan

Member
سلام
من برای یک نرم افزار باید setup درست کنم مراحل ساخت هم باید خودم انجام بدم(از installshield , setup factory , vs نمی خوام استفاده کنم ) الان مشکلم سر چک کردن مسیر net farmework هست چک کردن بلدم اما مسیر رجیستری نمی دونم
این مال فلش پلیر هست که قبلا the_king گفته بود
PHP:
@"CLSID\{D27CDB6E-AE6D-11cf-96B8-444553540000}\InprocServer32";
الان این مسر برای دات نت و چند نرم افزار دیگه می خوام چطور میتونم این مسیر ها رو پیدا کنم
این امتحان کردم جواب نداد
کد:
RegistryKey installed_versions = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\NET Framework Setup\NDP");
string[] version_names = installed_versions.GetSubKeyNames();
//version names start with 'v', eg, 'v3.5' which needs to be trimmed off before conversion
double Framework = Convert.ToDouble(version_names[version_names.Length - 1].Remove(0, 1), CultureInfo.InvariantCulture);
int SP = Convert.ToInt32(installed_versions.OpenSubKey(version_names[version_names.Length - 1]).GetValue("SP", 0));
ممنون
 
آخرین ویرایش:

swsehsan

Member
این یکی وقتی چک میکنم
PHP:
   string KeyName = "SOFTWARE\\Microsoft\\Active Setup\\Installed Components",
   framework,
   version;
          
            RegistryKey rgsKey = Registry.LocalMachine.OpenSubKey(KeyName);
            string[] instComps = rgsKey.GetSubKeyNames();
            foreach (string instComp in instComps)
            {
                RegistryKey key = rgsKey.OpenSubKey(instComp);
                framework = (string)key.GetValue(null); 
                if (framework != null && framework.IndexOf(".NET Framework") >= 0)
                {
                   
                    version = (string)key.GetValue("Version");
                    
                    lbInstVersions.Items.Add(framework + (version != null ? (" (" + version + ")") : ""));
                }
            }
این جوری نشون میده
کد:
.NET Framework(2.0.50727.0)
اما من دات نت 3.5 رو کامپیوترم نصبه ؟
 

جدیدترین ارسال ها

بالا