Windows Kayıt Defteri'ne gerçek MS-DOS'tan nasıl erişilir


1

DOS'tan Windows Kayıt Defteri'ne nasıl erişilir?

DOS önyüklenebilir diskten önyükleme yaparken DOS'tan kayıt defterine erişmem gerekiyor.
Bütün interneti araştırdım ve yalnızca DOS'ta kullanılamayan Çevrimdışı NT Şifre ve Kayıt Defteri Düzenleyicisi'ni buldum, anladığım kadarıyla.
Ayrıca RegView'i de (birçok aynadan) buldum, bu da pek işe yaramadı (birçok talimatı denedim).

Kayıt defteri kovanlarını yükleyebilen reg.exe gibi
kayıt defteri değerlerini değiştirebilmem için kullanımı kolay bir araç var mı ? Veya herhangi bir çalışma talimatı ??

Not: Zaten NTFS sürücülerini okuyabilen / yazabilen önyüklenebilir bir sürücüm var .

Şimdiden teşekkürler!


Bu pek bir cevap değil, bunun yerine bir Windows PE disk kullanabilir misiniz? Bundan regedit'i yükleyebilirsin.
Tanner Faulkner

1
WinPE ile nasıl yapacağımı biliyorum ama DOS'a ihtiyacım var.
Searush

Yanıtlar:


2

Windows kaydı, DOS'un kesilmesinden çok sonra oluşturuldu. Bu nedenle, bunu yapmanın yerel bir yolu yoktur ve (şaşırtıcı olmayan bir şekilde) bunu yapacak herhangi bir DOS programı yok gibi görünmektedir. Belki FreeDOS veya ReactOS dışında, hiç kimsenin DOS için bir Windows kayıt editörü yazmak için uğraşması muhtemel değildir.

Bununla birlikte , DOS'a Windows kayıt defterine erişmenin ve hatta düzenlemenin bir yolu var, ancak hoş değil. edit.comKayıt defteri kovanı dosyalarına doğrudan erişmek için bir dosya düzenleyici ( kesmeyecek) kullanmanız gerekir. Örneğin, erişmek HKLM\Software, açmak C:\Windows\Config\Softwareveya bir kullanıcının kovanına erişmek için açacaksınız C:\Users\<username>\NTUSER.dat. Ve bunların hepsi, Windows sistem sürücüsünün FAT32 bile olduğu varsayılıyor çünkü DOS, çoğu salt okunur erişime izin veren özel bir sürücü olmadan NTFS'ye erişemiyor.

Dediğim gibi, bu yöntem hoş değil çünkü Windows kayıt defterinin ham dosya biçimine aşina olmanız, dosyada görünen ancak silinmiş olarak işaretlenmiş girdiler konusunda dikkatli olmanız ve herhangi bir değişiklik yaparken inanılmaz derecede dikkatli olmanız gerektiği için böyle yapmak çok riskli. Bu nedenle, bu yöntem kesinlikle tavsiye edilmez ( onunla uğraşmasam bile , içine bakmak için her şeyi açmayı severim ).

Çok daha kolay ve daha güvenli bir yöntem, kovan dosyalarını başka bir Windows sistemine kopyalayıp monte etmek (örneğin, reg load hku\zzz x:\ntuser.dat), ne gerekiyorsa yapın, sonra çıkartın (örn. reg unload hku\zzz) Ve geri kopyalamaktır.


Reg.exe, MS-DOS'ta çalışmıyor. Windows işlevlerini kullanır ve MS-DOS önyükleme diskinden önyükleme sırasında çalıştırılamaz. DOS'ta çalıştırmanın bir yolu var mı? Veya DOS'ta çalışabilen Reg.exe sürümü var mı?
Jet

1
@Jet, reg.exeDOS'tan kullanabileceğinizi asla söylemedim . Eğer sürpriz olmaz birisi , bir yere de bir noktada DOS için Windows kayıt düzenleyicisi yarattı. Windows'un bazı yönleri için birkaç DOS yardımcı programı gördüm, ancak çoğu Win9x etrafında ortaya çıktı, bu nedenle Windows XP veya 7 için çok faydalı olma eğiliminde değillerdi - en iyi ihtimalle, kısmen çalışıyorlardı. Örneğin, bir DOS kayıt editörü olsaydı bile, yalnızca Win9x formatını desteklerdi ve Windows XP + kayıt defteri özelliklerini kullanmazdı.
Synetech

1
"Windows kayıt defteri, DOS'un durdurulmasından çok sonra oluşturuldu." - Doğru değil, NT 4.0 ve Windows 95'in bir kaydı vardı, DOS 2000 yılına kadar resmen sona
LawrenceC

Bu sadece nitpicking. ◔_◔ Yeni bağımsız sürümler üretmeyi bıraktıklarında ve odaklarını yalnızca Windows'a geçirdiklerinde DOS durdu. Evet, Windows ME üzerinden bile devam etti (önceki Win9x sürümlerinde olduğu gibi doğrudan önyüklemesini engelleseler bile), ancak Windows 95 çıktığında DOS'la ilgilenmeyi bıraktılar ve kesinlikle erişim yolunu uygulamak için uğraşmadılar. kayıt defterini DOS modundan düzenleyin.
Synetech

0

DOS, özel gömülü kullanımlar dışında, 2000 yılında Microsoft tarafından az çok emekliydi.

Ayrıca, Windows'un NT tabanlı sürümleri 9x / ME gibi DOS tabanlı değildir ve MSDOS yardımcı programları işletim sistemindeki farklılıklar nedeniyle NT tabanlı herhangi bir şeyle çalışacaksa az sayıdadır.

Microsoft, bant dışı kurtarma ve yükleme kullanım durumlarını desteklemek için Windows PE'yi tanıttı; Windows 9x / ME ile geçmişte ne için DOS kullanıldı. Bundan önce, XP ile Microsoft, eskiden DOS'un sıklıkla kullandığı kurtarma rolünü yerine getirmesi gereken Kurtarma Konsolu'nu tanıttı.

Bir Windows kurulumunu onarmak veya kurtarmak için saf, gerçek DOS kullanmak, hala Windows 95, 98 veya ME kullanmıyorsanız, yaklaşık on yıl boyunca ilgili ya da gerçekten mümkün olmamıştır.

Bu nedenle Microsoft'un NT tabanlı yüklemelere herhangi bir saf DOS'tan erişmek veya kurtarmak için herhangi bir araç geliştirmediğinden son derece eminim. Üçüncü taraf yardımcı programları mevcut olabilir, eğer varsa çok eski ve desteksiz olabilir ve iç Windows kayıt defteri dahili kayıtlarının resmi olarak belgelenmemiş olması nedeniyle güvenilir olmayabilir.


0

Uyarı: Aşağıdaki makale, sistem kayıt defterinizi düzenlemeyi içermektedir. Kayıt Defteri Düzenleyicisi'nin yanlış kullanılması, işletim sisteminizin yeniden kurulmasını gerektiren ciddi sorunlara neden olabilir. Kayıt Defteri Düzenleyicisi'ni ve aşağıdaki yönergeleri kullanmak kendi sorumluluğunuzdadır.

DOS'ta REGEDIT kullanma

Windows'ta kullandığımız REGEDIT de DOS programı olarak çalışıyor. REGEDIT.EXE, "kir" ve boş alanları geride bırakırken tam bir kayıt defteri yeniden oluşturmamızı sağlayan komut satırı değişkenlerini destekler. Yanınızda taşıyabileceğiniz ve bir disketten çalıştırabileceğiniz dört toplu iş dosyası oluşturarak komutları tekrar tekrar yazma gereksinimini ortadan kaldırırız. Basitlik adına, SYSTEM.DAT, USER.DAT ve REGEDIT.EXE'nin C: \ WINDOWS dizininde bulunduğunu varsayacağız. Birinci adım: ReadOnly ve Hidden özniteliklerini SYSTEM.DAT ve USER.DAT içinden kaldırın Windows kayıt defterini DOS'dan yeniden oluşturmanın ilk adımı, ReadOnly, Hidden ve System özniteliklerini SYSTEM.DAT ve USER.DAT dosyalarından kaldırmaktır. Öznitelikleri açıp kapatabilmenizi sağlayan bir toplu iş dosyası (REGATT.BAT) şöyle görünür: "% 1" değilse @echo kapalı == "-" "% 1" değilse = "" ""% 1r% 1h% 1s% 1s c: \ windows \ system.dat özniteliği% 1r% 1h% 1s c: \ windows \ user.dat "ENDIT" : INSTRUCT echo. echo "% 0 +" veya "% 0 -" gibi bir - veya + parametresi belirtmelisiniz: ENDIT echo.

Kullanmak için, sırasıyla dosya özniteliklerini kaldırmak veya eklemek için REGATT - veya REGATT + komutunu girin.

REGATT.BAT'ın çalışması şöyle:

@echo off: Prevents the lines that follow from being displayed on the screen while the commands are being executed. The "@" prevents "echo off" from displaying.
if not "%1"=="-" if not "%1"=="+" goto INSTRUCT: This makes the batch file look for one parameter and limits the parameter choices to either "-" or "+." If neither is found, the script jumps to the INSTRUCT portion of the batch file. Note the use of the double "equals" signs (==).
attrib %1r %1h %1s c:\windows\system.dat: Runs the "attrib" command on SYSTEM.DAT with either "-r -h -s" or "+r +h +s," depending on the parameter.
attrib %1r %1h %1s c:\windows\user.dat: Runs the "attrib" command on USER.DAT the same as it does for SYSTEM.DAT.
goto ENDIT: Jumps over the INSTRUCT statement since all went well.
:INSTRUCT: Label that identifies this portion of the batch file.
echo.–: Prints a blank line on the screen. Note that there is no space between "echo" and "."
echo You must specify a - or + parameter, as in "%0 +" or "%0 -": Instructions for using the batch file. The %0 is a variable that is automatically replaced by DOS with the name of the batch file you typed on the command line. If you typed regatt in lower case, the line will read "You must specify a - or + parameter, as in regatt + or regatt -." If you change the name of the batch file to "wom.bat" and type WOM in upper case, it will read "You must specify a - or + parameter, as in WOM + or WOM -" without further editing. Neat, huh?
:ENDIT: Label that identifies this portion of the batch file.
echo.: Prints a blank line on the screen before returning to the prompt.

İkinci adım: SYSTEM.DAT ve USER.DAT yedeğini oluşturun Yeniden oluşturma işlemi, geçerli kayıt defterini etkin biçimde yok eder. Yeniden oluşturma işlemi başarısız olursa (DAT dosyaları kötü bir şekilde bozulduğunda gerçekleşti), kayıt defteri olmayacak. Geri yüklemek için bozuk bir kayıt defterine sahip olmak, hiçbir kayıt defterine sahip olmamaktan iyidir. Yedekleme yapmak için, "unattribbed" SYSTEM.DAT ve KULLANICI. \ windows \ system.% 1 kopya c: \ windows \ user.dat c: \ windows \ user.% 1 giriş ENDIT: INSTRUCT echo. echo "% 0 sav" da olduğu gibi 1 ila 3 karakterlik bir dosya uzantısı girmelisiniz: ENDIT echo.

REGBACK.BAT içindeki satırların çoğu REGATT.BAT'dakilere benzer. Üç benzersiz çizgi:

if "%1"=="" goto INSTRUCT: This jumps to the INSTRUCT section if no parameter is given after the "regback" command. Without a parameter, the value of %1 is null, so the statement translates to if ""=="" goto INSTRUCT and, since double-quotes indeed equal double-quotes, the script jumps to give the user instructions.
copy c:\windows\system.dat c:\windows\system.%1: Copies SYSTEM.DAT to SYSTEM.parameter. Be sure to limit your parameter to three allowable DOS characters.
copy c:\windows\user.dat c:\windows\user.%1: Copies USER.DAT to USER.parameter as above.

Üçüncü adım: Kayıt defterinin yeniden yapılandırılması SİSTEMİNİN YEDEK KOPYALARINI YAPMADAN SİZİN KOMUTLARINI ÇALIŞTIRMAYINIZ. Unutmayın, kayıt aşamasında mevcut kopyayı yeniden oluşturma aşamasında imha edersiniz. Yeniden yapılanma başarısız olursa, sen de öyle yapacaksın. Kendi yedeğini aldığından emin ol. REGREBLD.BAT şöyle görünür: @ echo off echo. echo Kayıt defteri içeriğini dışa aktarma. Lütfen bekleyin ... regedit /l:c:\windows\system.dat / r: c: \ windows \ user.dat /ec:\windows\newreg.reg echo Windows kayıt defterini yeniden oluşturma. Kesmeyin! regedit /l:c:\windows\system.dat / r: c: \ windows \ user.dat /cc:\windows\newreg.reg eko. del c: \ windows \ newreg.reg eko.

REGREBLD.BAT hiçbir parametre almaz. İşte çok önemli çizgilerin yaptığı:

echo Exporting registry contents. Please wait...: The REGEDIT "export" command displays no information while it's executing. This is a courtesy line to let you know that something is happening.
regedit /l:c:\windows\system.dat /r:c:\windows\user.dat /e c:\windows\newreg.reg: Exports the contents of the current registry to a file we'll call "newreg.reg." The "/l:" and "/r:" switches point to the exact paths of SYSTEM.DAT and USER.DAT, respectively. The "/e" switch is for "export" and "c:\windows\newreg.reg" is the name of the target file that is created during the process.
echo Rebuilding the Windows registry. Do not interrupt!: Another courtesy statement. Unlike the "export" command, the REGEDIT "create" command displays a progress counter. However, it doesn't state what it's creating, only that it’s importing.
regedit /l:c:\windows\system.dat /r:c:\windows\user.dat /c c:\windows\newreg.reg: Creates a new registry from the contents of "c:\windows\newreg.reg." The key here is the "/c" switch, for "create." As soon as it is encountered, the current SYSTEM.DAT and USER.DAT are destroyed as new files are created from the data in newreg.reg. If this process is interrupted, the new registry will be incomplete and, therefore, useless.
echo.: The progress counter that is displayed by REGEDIT does not have a carriage return. This statement forces one at the completion of the "create" process.
del c:\windows\newreg.reg: Deletes the now unnecessary newreg.reg data file. You can remove this line if you want to look at the contents of newreg.reg before you delete it manually.

Tam verme / oluşturma yordamı, geçerli kayıt defterinin boyutuna ve durumuna bağlı olarak oldukça zaman alabilir. Masaüstü bilgisayarlarda kayıt defterini yeniden oluşturmak için beş dakikadan bir saate kadar sürebildiğini gördüm. Dizüstü bilgisayarlarda kullanmanızı tavsiye etmiyorum. Yeniden oluşturma başarılı olursa (ve çoğu zaman), bir sonraki adıma ihtiyacınız olmayacaktır.

Dördüncü adım: Başarısız bir yeniden yüklemeyi geri yükleme Dördüncü adım, başarısız bir yeniden oluşturma işleminin SYSTEM.DAT ve USER.DAT dosyalarını çalışmadan ayrılmanız durumunda kayıt defterini önceki durumuna getirmesini içerir. Bu toplu iş dosyasına REGRET.BAT diyoruz. Yedeklerinizi oluştururken kullandığınız uzantıyı hatırlıyor musunuz? Burada ihtiyacınız olacak: @echo kapalı "% 1" == "" eğer c: \ windows \ system mevcut değilse INSTRUCT \ 'a sahip değil.% 1 goto NOFILE yoksa c: \ windows \ user. -r -h -sc: \ windows \ system.dat niteliği -r -h -sc: \ windows \ user.dat del c: \ windows \ system.dat del c: \ windows \ user.dat kopya c: \ windows \ system.% 1 c: \ windows \ system.dat kopya c: \ windows \ user.% 1 c: \ windows \ user.dat ENDIT: NOFILE echo. echo "% 1" yedekleme dosyalarınızdan biri veya daha fazlası bulunamıyor! echo Lütfen dosya uzantınızı doğrulayın ve tekrar deneyin. ENDIT: INSTRUCT echo.

REGRET.BAT komut isteminde “pişmanlıktan çıkma” komutunu girerek çalışır; burada “ext”, yedeklemenizi oluştururken kullandığınız uzantıdır. Dahili dosyalar bulunmazsa, REGRET size söyler. REGRET komutlarının tümü, önceki toplu iş dosyalarında kullandıklarımıza benzer. Başarısız olan SYSTEM.DAT ve USER.DAT dosyalarını sildikten sonra yedekleri yeniden adlandırmak yerine DAT'lere kopyaladığımızı unutmayın. Bir daha ihtiyaç duymayacaklarından kesinlikle emin olana kadar kritik yedekleme dosyalarını silmek konusunda kendimi rahat hissetmiyorum. Rahat olduğunuzda bunları manuel olarak silin.

Öğrendiklerinizi kullanın Şimdi toplu iş dosyalarınız var, devam edin ve onları hasta bir sistemde deneyin. Bilgisayarı gerçek bir DOS "Yalnızca güvenli mod komut istemi" olarak önyükleyin ve dosyaları bir disketten çalıştırın. Disketi önyüklenebilir hale getirirseniz, C: \ WINDOWS; C: \ WINDOWS \ COMMAND için bir yol ifadesi içeren bir AUTOEXEC.BAT olduğundan emin olun. Kayıt defterinin başarılı bir şekilde yeniden yapılandırılması, birçok Windows koruma hatası da dahil olmak üzere "gizemli" Windows sorunlarınızın çoğunu çözecektir.

Kaynak: TechRepublic


1
Bunu duydum. Ancak Regedit'imi (Win7) kullanmaya çalıştığımda şöyle diyor: "Bu program DOS modunda çalıştırılamaz". Belki başka sürümleri de yapabilir?
Searush

1
Win98 regedit.exe ile mümkün olabilir, ancak herhangi bir modern Windows sürümünün kayıt defterinde kullanmaya bile çalışmam.
Karan
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.