662
Chương 17: Sự hòa hợp với môi trường Windows
// Nhấn Enter để kết thúc.
Console.WriteLine("Main method complete. Press Enter.");
Console.ReadLine();
}
public static void UpdateUsageCounter(RegistryKey root) {
// Tạo một khóa để lưu trữ biến đếm,
// hoặc lấy tham chiếu đến khóa đã có.
RegistryKey countKey = root.CreateSubKey("RegistryExample");
// Đọc giá trị của biến đếm hiện tại, và chỉ định
// giá trị mặc định là 0. Ép đối tượng về kiểu Int32,
// và gán vào một giá trị int.
int count = (Int32)countKey.GetValue("UsageCount", 0);
// Ghi biến đếm đã được cập nhật trở lại Registry,
// hoặc tạo một giá trị mới nếu nó chưa tồn tại.
countKey.SetValue("UsageCount", ++count);
}
public static void SearchSubKeys(RegistryKey root,
String searchKey) {
// Lặp qua tất cả các khóa con trong khóa hiện tại.
foreach (string keyname in root.GetSubKeyNames()) {
try {
using (RegistryKey key = root.OpenSubKey(keyname)) {
if (keyname == searchKey) PrintKeyValues(key);
SearchSubKeys(key, searchKey);
}
} catch (System.Security.SecurityException) {
// Bỏ qua SecurityException với chủ định của ví dụ này.
// Một số khóa con của HKEY_CURRENT_USER được bảo mật