मेरे आवेदन की शुरुआत में मैं यह देखने की कोशिश कर रहा हूं कि उपयोगकर्ता के पास सॉफ़्टवेयर का एक विशिष्ट संस्करण स्थापित है, विशेष रूप से MySQL कनेक्टर, सभी C# का उपयोग कर रहे हैं। रजिस्ट्री में, MySQL में एक संस्करण प्रविष्टि है। तो मैं इसे पूरा करने की कोशिश कर रहा हूं यह है।रजिस्ट्री कुंजी का मूल्य कैसे पढ़ा जाए C#
मेरा ऐप शुरू होता है। स्टार्टअप कोड में कहीं भी मुझे निम्नलिखित चीजों को क्रम में करने की ज़रूरत है। यदि उपयोगकर्ता MySQL कनेक्टर स्थापित है, जो में स्थित है को देखने के लिए जाँच करें ...
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MySQL AB\MySQL Connector/Net
उपयोगकर्ता कनेक्टर स्थापित किया गया है, मैं क्या संस्करण वे है, जांच करने के लिए करना चाहता था जो नाम = "संस्करण" और डेटा = xxx (नीचे चित्र)
अब उपयोगकर्ता के पास एक विशिष्ट संस्करण स्थापित है, तो मैं अन्य कोड निष्पादित करूंगा, जहां से मैं ले सकता हूं।
इस बारे में जाने का सबसे अच्छा तरीका क्या होगा?
संपादित करें: नीचे कोड मैं वर्तमान में है और मैं (यह टिप्पणी की है) लाइन 19 पर एक त्रुटि हो रही है। मेरी त्रुटि कहती है "error CS1001: Identifier Expected
" मैं इसका अर्थ समझने में सक्षम नहीं था। कोई मदद?
using System;
using Microsoft.Win32;
using System.Data;
public class regTest
{
public static void Main()
{
try
{
RegistryKey key = Registry.LocalMachine.OpenSubKey("Software\\Wow6432Node\\MySQL AB\\MySQL Connector\\Net");
if (key != null)
{
Object o = key.GetValue("Version");
if (o != null)
{
Version version = new Version(o as String); //"as" because it's REG_SZ...otherwise ToString() might be safe(r)
Version broken = new Version("6.7.4");
if (version.Equals.(broken)) //This is where the error is occuring
{
DataSet dataSet = ConfigurationManager.GetSection("system.data") as ystem.Data.DataSet;
DataView vi = dataSet.Tables[0].DefaultView;
vi.Sort = "Name";
if (vi.Find("MySql") == -1)
{
dataSet.Tables[0].Rows.Add("MySql"
, "MySql.Data.MySqlClient"
, "MySql.Data.MySqlClient"
,
typeof(MySql.Data.MySqlClient.MySqlClientFactory).AssemblyQualifiedName);
}
}
}
}
}
catch (Exception ex) //just for demonstration...it's always best to handle specific exceptions
{
//react appropriately
}
}
}
http://msdn.microsoft.com/en-us/library/microsoft.win32.registry.getvalue.aspx – Marcus