Câu trả lời:
REG_MULTI_SZ
dữ liệu trong .reg
tệp phải được mã hóa theo hệ thập lục phân. Nếu nội dung không bao giờ thay đổi, bạn có thể tạo một mục giả trong sổ đăng ký của mình bằng dữ liệu, xuất nó và điều chỉnh nội dung đó theo nhu cầu của bạn.
Nếu nó thay đổi, có lẽ sẽ dễ dàng hơn nhiều để sử dụng reg
chương trình đi kèm với Windows để thêm nó. Để làm như vậy, hãy gọi reg
theo định dạng này:
Reg Add <KEY> /v <NAME> /t REG_MULTI_SZ /d <DATA> /s <SEPERATOR>
Việc chuyển đổi tách biệt là tùy chọn. Nếu không được sử dụng, các chuỗi được viết nên được phân tách bằng chuỗi thoát cho ký tự null ( \0
). Ví dụ, để thêm một mục tên Flair
để HKLM\SOFTWARE\WhizBang\Excite-O-Rama
với các dây foo
, bar
và baz
bạn phải chạy lệnh:
Reg Add HKLM\SOFTWARE\WhizBang\Excite-O-Rama /v Flair /t REG_MULTI_SZ /d foo\0bar\0baz
Để phân tách dữ liệu bằng dấu phẩy thay vào đó, bạn sẽ chạy:
Reg Add HKLM\SOFTWARE\WhizBang\Excite-O-Rama /v Flair /t REG_MULTI_SZ /d foo,bar,baz /s ,
Để biết thêm thông tin, tham khảo Microsoft Docs cho Reg
lệnh.
dword:
= = DWORD
hex(2):
= Chuỗi mở rộnghex(7):
= Đa chuỗiA DWORD
là số nguyên không dấu 32 bit (phạm vi thập phân: 0
- 4294967295
) và trong sổ đăng ký, DWORD
luôn luôn bắt đầu bằng 0x
và có 8 chữ số theo sau 0x
. Điều này có thể ở định dạng thập phân hoặc thập lục phân; ví dụ, 1000
có thể được viết là 0x00001000
hoặc 0x000003e8
.
DWORDS
chỉ có thể sử dụng các chữ số 0
- 9
. Các chuỗi, dưới bất kỳ hình thức nào, luôn luôn sử dụng ASCII và trong ACSII, 1000
chỉ có thể được viết dưới dạng 31,30,30,30
. Đối với kiểu dữ liệu Chuỗi, ASCII hoạt động ở chế độ nền mà bạn không hề biết vì máy tính chỉ hiểu 1s và 0.
Đối với các kiểu dữ liệu Chuỗi mở rộng và Đa chuỗi, các mục này lưu các mục nhập của bạn dưới dạng một chuỗi mã ASCII theo định dạng thập lục phân, được phân tách bằng dấu phẩy và số 0; vì vậy một chuỗi có thể mở rộng 1000
sẽ làhex(2):31,00,30,00,30,00,30,00
Hãy chuyển đổi %PROGRAMFILES%
thành Chuỗi mở rộng:
%PROGRAMFILES%
vào hộp văn bản, Dấu phân tách đầu ra do người dùng xác định : %
, chọn Chuyển đổi và nó sẽ cung cấp cho bạn:
%25%50%52%4F%47%52%41%4D%46%49%4C%45%53%25
%
đến cuối, Tìm / Thay thế tất cả %
bằng ,00,
và xóa dấu phẩy ở cuối chuỗi. Bạn sẽ nhận được:
25,00,50,00,52,00,4F,00,47,00,52,00,41,00,4D,00,46,00,49,00,4C,00,45,00,53,00,25,00
hex(2):25,00,50,00,52,00,4F,00,47,00,52,00,41,00,4D,00,46,00,49,00,4C,00,45,00,53,00,25,00
Bài học này chứa tất cả các kiến thức cần thiết để thiết kế ngược bất kỳ mục đăng ký mã hóa hex nào không được mã hóa.
.bat
tệp córeg
lệnh thay vì.reg
tệp), nhưng tại sao nó lại nói về REG_MULTI_SZ khi câu hỏi là về REG_EXPAND_SZ?