Bagaimana cara menentukan entri REG_EXPAND_SZ dalam file .REG?
9
Saya mencoba menggunakan skrip batch dan .regfile untuk mengatur beberapa layanan khusus. Sebagian besar kunci sedang diatur dengan benar, tetapi saya perlu mengatur DependOnServicekunci untuk beberapa layanan, yang biasanya multi-string. Apakah mungkin untuk mengatur kunci ini dari .regfile, atau akankah diperlukan entri manual?
REG_MULTI_SZdata dalam .regfile harus dikodekan dalam heksadesimal. Jika konten tidak pernah berubah, Anda dapat membuat item dummy di registri Anda dengan data, mengekspornya, dan menyesuaikannya dengan kebutuhan Anda.
Jika itu berubah, mungkin akan jauh lebih mudah untuk menggunakan regprogram yang disertakan dengan Windows untuk menambahkannya. Untuk melakukannya, panggil regdalam format ini:
Sakelar pemisah bersifat opsional. Jika tidak digunakan, string yang akan ditulis harus dipisahkan oleh urutan escape untuk karakter null ( \0). Misalnya, untuk menambahkan item bernama Flairuntuk HKLM\SOFTWARE\WhizBang\Excite-O-Ramadengan string foo, bardan bazAnda akan menjalankan:
Jawaban yang bagus (menggunakan .batfile dengan regperintah alih-alih .regfile), tetapi mengapa ini berbicara tentang REG_MULTI_SZ ketika pertanyaannya adalah tentang REG_EXPAND_SZ?
Norswap
0
dword: = DWORD
hex(2): = Expandable-String
hex(7): = Multi-String
A DWORDadalah bilangan bulat 32-bit unsigned (rentang desimal: 0- 4294967295), dan, dalam registri, a DWORDselalu dimulai dengan 0xdan memiliki 8 digit yang mengikuti 0x. Ini bisa dalam format desimal atau heksadesimal; misalnya, 1000dapat ditulis sebagai 0x00001000atau 0x000003e8.
DWORDShanya dapat menggunakan digit 0- 9. String, apa pun jenisnya, selalu menggunakan ASCII, dan dalam ACSII, 1000hanya dapat ditulis sebagai 31,30,30,30. Untuk tipe data String, ASCII bekerja di latar belakang tanpa Anda ketahui karena komputer hanya memahami angka 1 dan 0.
Untuk tipe data Expandable-String dan Multi-String, ini menyimpan entri Anda sebagai serangkaian kode ASCII dalam format heksadesimal, dipisahkan oleh koma dan hex nol; jadi String yang Dapat Diperluas dari 1000akanhex(2):31,00,30,00,30,00,30,00
Mari kita konversi %PROGRAMFILES%menjadi String yang Dapat Diperluas:
Gunakan ASCII ke Hex Conversion Tool , masukan %PROGRAMFILES%ke dalam kotak teks, Pembatas keluaran yang ditentukan pengguna:, %pilih Konversi, dan itu akan memberi Anda:
%25%50%52%4F%47%52%41%4D%46%49%4C%45%53%25
Salin / tempel hasil itu ke dalam editor teks: Pindahkan yang pertama %ke akhir, Temukan / Ganti semua %dengan ,00,dan hapus koma di bagian paling akhir dari string. Anda harus mendapatkan:
Tautan hotfile hanya arsip 7z dengan halaman html (yang berisi konverter) disimpan di dalamnya. Mengapa tidak hanya menautkan ke halaman web itu sendiri?
John Bensin
1
Untuk menghindari pembusukan tautan, poskan semua informasi yang relevan dalam jawaban Anda. untuk informasi lebih lanjut tentang cara menjawab pertanyaan, lihat Cara Menjawab
.bat
file denganreg
perintah alih-alih.reg
file), tetapi mengapa ini berbicara tentang REG_MULTI_SZ ketika pertanyaannya adalah tentang REG_EXPAND_SZ?dword:
=DWORD
hex(2):
= Expandable-Stringhex(7):
= Multi-StringA
DWORD
adalah bilangan bulat 32-bit unsigned (rentang desimal:0
-4294967295
), dan, dalam registri, aDWORD
selalu dimulai dengan0x
dan memiliki 8 digit yang mengikuti0x
. Ini bisa dalam format desimal atau heksadesimal; misalnya,1000
dapat ditulis sebagai0x00001000
atau0x000003e8
.DWORDS
hanya dapat menggunakan digit0
-9
. String, apa pun jenisnya, selalu menggunakan ASCII, dan dalam ACSII,1000
hanya dapat ditulis sebagai31,30,30,30
. Untuk tipe data String, ASCII bekerja di latar belakang tanpa Anda ketahui karena komputer hanya memahami angka 1 dan 0.Untuk tipe data Expandable-String dan Multi-String, ini menyimpan entri Anda sebagai serangkaian kode ASCII dalam format heksadesimal, dipisahkan oleh koma dan hex nol; jadi String yang Dapat Diperluas dari
1000
akanhex(2):31,00,30,00,30,00,30,00
Mari kita konversi
%PROGRAMFILES%
menjadi String yang Dapat Diperluas:%PROGRAMFILES%
ke dalam kotak teks, Pembatas keluaran yang ditentukan pengguna:,%
pilih Konversi, dan itu akan memberi Anda:%
ke akhir, Temukan / Ganti semua%
dengan,00,
dan hapus koma di bagian paling akhir dari string. Anda harus mendapatkan:Pelajaran ini berisi semua pengetahuan yang diperlukan untuk merekayasa balik entri registri hex-coded yang tidak dienkripsi.
sumber