標籤:try 64bit sof environ ace soft null 註冊 png
在64位的Windows作業系統中,為了相容32位程式的運行,64位的Windows作業系統採用重新導向機制。目的是為了能讓32位程式在64位的作業系統不僅能操作關鍵檔案文夾和關鍵的註冊表並且又要避免與64位程式衝突
相關資料請查看32位程式在64位系統下啟動並執行重新導向機制
下面是以擷取作業系統安裝密匙KEY的案例:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using Microsoft.Win32;namespace ReadProductKey{ class Program { static void Main(string[] args) { string BackupProductKeyDefault; RegistryKey localKey = null; try {
//判斷作業系統版本(64位\32位)開啟登錄機碼 localKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, Environment.Is64BitOperatingSystem?RegistryView.Registry64: RegistryView.Registry32);
//得到註冊表索引值 BackupProductKeyDefault = localKey.OpenSubKey(@"SOFTWARE\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform").GetValue("BackupProductKeyDefault", "").ToString(); Console.WriteLine(BackupProductKeyDefault); Console.ReadLine(); } catch (Exception ex) { } } }}
程式執行介面:
注意:如果以 RegistryView.Registry32開啟登錄機碼,並編譯為32位版本的程式是不能擷取系統關鍵註冊表索引值的
原文地址:http://www.cnblogs.com/iamlucky/p/5998510.html
C# 32位程式在64位系統下註冊表操作