C# 32位应用读写64位系统的注册表

2021/5/14 14:37:48

本文主要是介绍C# 32位应用读写64位系统的注册表,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

_is64Bit = Environment.Is64BitOperatingSystem;
		private object ReadRegistryKeyValue(string keyPath, string valueName)
        {
            object obj = null;
            using (var baseKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine,
                _is64Bit ? RegistryView.Registry64 : RegistryView.Default)) // HKEY_LOCAL_MACHINE\
			{
                using (var pathKey = baseKey.OpenSubKey(keyPath)) // e.g:SOFTWARE\Microsoft\DirectX
				{
                    obj= pathKey?.GetValue(valueName, null);
				}
            }
            return obj;
            //return Registry.GetValue(keyPath, valueName, null);
        }

		private void WriteRegistryKeyValue(string keyPath, string valueName, object value)
		{
            using (var baseKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine,
                _is64Bit ? RegistryView.Registry64 : RegistryView.Default)) // HKEY_LOCAL_MACHINE\
			{
                using (var pathKey = baseKey.OpenSubKey(keyPath)) // e.g:SOFTWARE\Microsoft\DirectX
				{
					if (pathKey != null)
                    {
                        pathKey.SetValue(valueName, value);
                    }
				}
            }
			//Registry.SetValue(keyPath, valueName, value);
		}



这篇关于C# 32位应用读写64位系统的注册表的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程