Windows Registry là tập hợp các cài đặt mà Windows và ứng dụng có thể sử dụng. Nó là một thư mục lưu trữ cài đặt và tùy chọn cho hệ điều hành Microsoft Windows. Nó chứa thông tin và cài đặt cho tất cả phần cứng, phần mềm hệ điều hành, hầu hết phần mềm không phải hệ điều hành, người dùng, tùy chọn của PC, v.v.
Registry bao gồm 5 Root Keys (Khóa gốc) sau. Root Keys chứa SubKeys (Khóa con). Subkeys có thể chứa subkeys của chính chúng và chứa ít nhất một giá trị, gọi là Default Value (Giá trị mặc định). Một khóa với tất cả subkeys và giá trị của nó được gọi là Hive.
Mỗi khóa có một trong các Data Types (Kiểu dữ liệu) – các kiểu dữ liệu:
- REG_SZ, REG_BINARY,
- REG_DWORD,
- REG_QWORD,
- REG_MULTI_SZ hoặc
- REG_EXPAND_SZ.
Trong bài viết này, chúng tôi sẽ chỉ cho bạn cách tạo Registry Key trong Windows 10.

Trước khi bắt đầu, luôn là ý kiến tốt để sao lưu Registry hoặc tạo System Restore Point (Điểm khôi phục hệ thống).
Windows Registry phức tạp về kiến trúc và được xây dựng sao cho người dùng phổ thông không hiểu. Cũng khuyến nghị bạn biết cơ bản và không sửa đổi trừ khi bạn biết mình đang làm gì.
Cấp bậc của Windows Registry

Để chỉnh sửa Registry, chúng ta dùng Registry Editor tích hợp sẵn hoặc regedit. Nó hiển thị cấu trúc điều hướng dạng cây. Cấp cao nhất là máy tính của bạn, theo sau là danh sách thư mục, và thư mục con. Các thư mục này gọi là KEYS, và có năm tập thư mục cố định dưới Computer.
- HKEY_CLASSES_ROOT: Chứa thông tin liên kết phần mở rộng tệp giúp máy tính hiểu phải làm gì khi được yêu cầu một tác vụ.
- HKEY_CURRENT_USER: Chứa thông tin cấu hình cho Windows và phần mềm cho người dùng hiện tại.
- HKEY_LOCAL_MACHINE: Lưu trữ cấu hình cho phần mềm cài đặt trên máy tính, và cả cho Windows OS
- HKEY_USERS: Ở đây bạn tìm thấy cấu hình riêng cho từng người dùng trên máy tính đó.
- HKEY_CURRENT_CONFIG: Là con trỏ đến HKEY_LOCAL_MACHINE
Đây là các master keys vì bạn không thể tạo NEW KEY dưới Computer – nhưng bạn có thể tạo khóa mới dưới bất kỳ master key nào.
Cách tạo Registry Key trong Windows 11/10

1] Sử dụng Registry Editor
Tạo Registry Key rất dễ. Chuột phải vào bất kỳ thư mục hoặc khoảng trắng nào và chọn New (Mới). Bạn có thể tạo Key, String Value, Binary Value, DWORD Value (32-bit), QWORD value (64-bit), Multi-String Value hoặc Expandable String Value. Phương pháp này hữu ích khi bạn định thực hiện thay đổi nhỏ để sửa vấn đề trên máy tính. Có thể liên quan đến ứng dụng hoặc cấp OS.

- Để chỉnh sửa giá trị hiện có, nhấp đúp vào nó để mở trình chỉnh sửa.

- Để xóa khóa, chuột phải vào nó và chọn Delete.
- Bạn cũng có tùy chọn Rename (Đổi tên), Export (Xuất), Copy, và set Permissions (Thiết lập quyền).
2] Sử dụng Command Line (Dòng lệnh)

Bạn cũng có thể dùng Command Line để thao tác registry keys cùng với mẹo, tính năng và phương pháp an toàn.
3] Dùng Notepad tạo file REG
Chuột phải vào bất kỳ khóa hiện có nào, và xuất nó. Mở tệp đó trong notepad, và nó sẽ giúp bạn hiểu cách chỉnh sửa khóa và giá trị. Hữu ích khi bạn muốn chỉnh sửa hàng loạt, với bản sao lưu.

Lưu ý khai báo phiên bản, theo sau là dòng trống, rồi đường dẫn theo sau phần còn lại trong ngoặc kép, và dòng trống nữa. Khi chỉnh sửa xong, bạn có thể chuột phải, và chọn merge (hợp nhất) tệp vào registry hive.
4] Công cụ của bên thứ ba
Nếu bạn thấy registry editor mặc định phức tạp, bạn có thể dùng công cụ như RegCool, Registrar Registry Manager Lite, và Registry Commander. Chúng cung cấp tính năng như Undo, Redo, quản lý quyền, cửa sổ tab, import, export, favorites, v.v.
3] Sử dụng Lập trình
Nếu bạn là nhà phát triển ứng dụng, bạn nên dùng lập trình để quản lý cài đặt ứng dụng trong registry. Đây là ví dụ, và sẽ khác tùy ngôn ngữ bạn dùng phát triển ứng dụng.
RegistryKey key = Registry.LocalMachine.CreateSubKey(@"SYSTEM\CurrentControlSet\services\eventlog\MyApplication\MyService"); key.Close();
Bây giờ bạn đã biết cách làm, chúng tôi cũng khuyến nghị bạn đọc ý nghĩa của từng loại. Điều này rất quan trọng, và chỉ giúp bạn chắc chắn các thay đổi bạn làm là đúng.
Điều gì tạo nên một Registry Key?
Nếu bạn hình dung "Key" như một thư mục, phần còn lại là các loại tệp khác nhau lưu trữ nhiều loại giá trị. Vì vậy nếu bạn xây dựng ứng dụng, bạn có thể có thư mục chính, và thư mục con để tách tập này khỏi tập kia. Dưới đây là chút về từng loại:
DWORD & QWORD: Double Word có thể lưu đơn vị dữ liệu 32-bit, trong khi QWORD lưu 64-bit dữ liệu.

String Value (REG_SZ): Có thể lưu chuỗi Unicode hoặc ANSI, và chứa null ở cuối.
Multi-String value: Khi bạn muốn lưu nhiều String Value, bạn có thể dùng loại này. Tuy nhiên, hãy chắc chắn kết thúc bằng chuỗi rỗng (\0). Ví dụ đơn giản:
String1\0String2\0String3\0LastString\0\0
Lưu ý "\0" ở cuối đánh dấu kết thúc chuỗi đầu tiên, và \0 cuối cùng đánh dấu kết thúc multi-string.

Expandable String Value: Bạn có thể dùng cho Biến môi trường dùng chuỗi Unicode hoặc ANSI. Ưu điểm là bạn có thể mở rộng nó không giống String và Multi-String value.
Binary Value: Đơn giản nhất – chỉ chứa 0 và 1.
Chúng tôi hy vọng bạn thấy bài viết này hữu ích.
