Sự khác biệt giữa HKEY_CURRENT_USER và HKEY_LOCAL_MACHINE

HKEY_CURRENT_USER so với HKEY_LOCAL_MACHINE

HKEY_CURRENT_USER và HKEY_LOCAL_MACHINE là hai khóa gốc trong sổ đăng ký Windows là một phần quan trọng của mọi cài đặt HĐH Windows kể từ Windows 3.1. Sổ đăng ký Windows chứa các cài đặt thiết bị, tùy chọn phần mềm và các thông tin khác liên quan đến máy tính, HĐH và các ứng dụng có trên đó. Sự khác biệt chính giữa HKEY_CURRENT_USER và HKEY_LOCAL_MACHINE là những gì họ liên quan đến. HKEY_LOCAL_MACHINE giữ toàn bộ thông tin có liên quan đến máy tính trong khi HKEY_CURRENT_USER chứa thông tin dành riêng cho người dùng. Do đó, chỉ có một bản sao của HKEY_LOCAL_MACHINE trong khi có nhiều bản sao của HKEY_CURRENT_USER với các giá trị khác nhau.

Nếu người dùng quyết định chỉnh sửa các mục đăng ký trong HKEY_CURRENT_USER, anh ta sẽ chỉ thay đổi cài đặt cho chính mình. Nhưng nếu anh ta thay đổi các mục trong HKEY_LOCAL_MACHINE, anh ta sẽ thay đổi cài đặt cho mọi người sử dụng máy tính đó. Một ví dụ tốt về điều này sẽ là cài đặt một phần mềm mới. Nhiều phần mềm hỏi khi cài đặt liệu nó chỉ dành cho người dùng hiện tại hay cho tất cả mọi người. Chỉ chọn cho người dùng hiện tại sẽ dẫn đến các mục được tạo bằng HKEY_CURRENT_USER trong khi chọn cho mọi người sẽ đặt các mục trong HKEY_LOCAL_MACHINE. Rõ ràng, chọn cái trước có nghĩa là chỉ người dùng đã cài đặt phần mềm mới có thể sử dụng phần mềm trong khi tùy chọn thứ hai sẽ cho phép mọi người xem và sử dụng phần mềm.

Một điểm khác biệt quan trọng khác giữa HKEY_LOCAL_MACHINE và HKEY_CURRENT_USER là người có thể chỉnh sửa nó. Cái trước có thể được chỉnh sửa bởi bất kỳ người dùng nào có quyền truy cập vào sổ đăng ký trong khi người dùng sau chỉ có thể được chỉnh sửa bởi người dùng cá nhân. Bạn không thể đăng nhập vào một tài khoản và chỉnh sửa các mục HKEY_CURRENT_USER trên một tài khoản khác.

Cuối cùng, có vấn đề khi các mục đăng ký được tải. HKEY_LOCAL_MACHINE được tải trong quá trình khởi động hệ điều hành. So sánh, HKEY_CURRENT_USER chỉ được tải sau khi người dùng đăng nhập vào tài khoản của anh ta, điều này khá hợp lý vì HĐH sẽ không biết HKEY_CURRENT_USER sẽ tải cái nào. Nếu người dùng không đăng nhập vào một tài khoản cụ thể hoặc đăng nhập vào tài khoản khách, cài đặt HKEY_CURRENT_USER mặc định sẽ được tải. Đối với người dùng mới, các mục nhập HKEY_CURRENT_USER cũng sẽ giống như mặc định.

Tóm lược:

1.HKEY_CURRENT_USER chỉ áp dụng cho một người dùng trong khi HKEY_LOCAL_MACHINE có thể áp dụng cho tất cả mọi người
2.HKEY_LOCAL_MACHINE luôn khả dụng trong khi HKEY_CURRENT_USER cho một người dùng cụ thể chỉ khả dụng khi anh ta đăng nhập
3.HKEY_LOCAL_MACHINE được tải khi khởi động trong khi HKEY_CURRENT_USER được tải khi đăng nhập