Yukarı nedir!?!
Merhaba. Birisi dediğinde seviyorum;
“[...] nasıl hata ayıklanır?”
Aslında Windows 8 kurulumunun bir kurulumuna sahip değilim ve Windows 8 kurulumuyla da oynamadım, bu yüzden önceki modellerle bazı temel benzerlikler olduğunu varsayacağım. Onları yaparken varsayımları söylemeye çalışacağım.
Çekimleri çağırmak
Benim sorunum, açıklamanıza göre, sistem kayıt defterinde uygun girişleri kayıt başarısız olmasıdır, böylece daha önce "açık ..." yaptıktan sonra "açık" çalıştırdığınızda uygulamayı göreceksiniz son kez seçildi.
Sorununuzda size yol göstereceğim ve ilk tahminimi kanıtlayacağım veya çürüteceğim. Aşağıdaki tüm ayrıntı düzeyime ihtiyacınız yoksa, sorunu çözmeye çalıştığımız Recon bölümüne atlayabilir / tarayabilirsiniz.
Hızlı düzeltmeler
Aşağıda açıklanan daha ilgili adımlara girmeden önce, önce Kontrol Panelinde bulunan Varsayılan Programlar arayüzünü araştırmalısınız . "Birlikte aç ..." menüsünden benzer bir etki elde edebilirsiniz, ancak bunun sizin için çalışmadığını zaten söylediniz. ** Seçtiğiniz uygulama için varsayılan uygulama olarak ayarınızı hatırlamayı belirten onay kutusunu ayarladığınızdan emin olun.
Denetim Masası'ndaki Varsayılan Programlar arabirimi altında, "varsayılanları sıfırla" veya önceki bir sürüme dönmeniz için seçenekler olabilir. Sorununuzu çözüp çözmediklerini görmek için bu çeşitli seçenekleri düşünebilirsiniz. Bunları önce yapın, çünkü en kolay düzeltmeler olacaklar. Çalışmıyorlarsa, aşağıdaki seçeneklere devam etmelisiniz.
Varsayımlar
Bunlar öngördüğüm varsayımlar. Bunlardan herhangi biri taban dışındaysa, lütfen bana bildirin ve eğer varsa, bir Windows 8 kurulumu ayarlamak için zaman ayıracağım.
Kayıt Defteri
Yaptığım en büyük varsayım, işletim sisteminin hala kayıt defterini kullanması ve örnekler verdiğim yerler için, Windows 8'deki kayıt defteri dizini düzeninin / yapısının da öncekilere benzediğini varsayıyorum.
Cmd.exe
Şahsen, genellikle bir komut istemi tercih ederim, bu yüzden muhtemelen bir terminal oturumu bağlamındaki adımları açıklayacağım. Windows 8'in hala cmd.exe olduğunu varsayıyorum ; Olmasaydı gerçekten şaşırırdım.
Kayıt düzenleyici
Bir kayıt defteri varsa, muhtemelen kayıt defterini görüntülemek / düzenlemek için bir araç vardır. GUI ve komut satırı araçlarının adının öncekilerle aynı olduğunu varsayacağım.
Kullanıcı Ayrıcalıkları
Kabuğu yükseltilmiş ayrıcalıklarla çağırmanın yollarının, ne yapacağınızı bileceğiniz OS öncülleriyle yeterince benzer olduğunu varsayacağım. Eğer temelden uzak kalsam, biraz ayrıntı isteyin ve elimden geleni yapacağım.
SysInternals Süit
Bunlar Windows 8'de mevcut olmasa son derece hayal kırıklığına uğrayabilirim . Microsoft ve üçüncü taraf geliştiricilerin geçtiği geliştirici / QA döngüleri için çok temel oldukları için mevcut olmayacağına inanamıyorum .
WinDbg.exe, DDK'ler ve SDK'lar
Bunların zaten yüklü olmadığını varsayıyorum. Bu iyi. Muhtemelen bu ağır hizmet araçlarına ihtiyaç duymadan sorunu çözebiliriz. Önce Recon bölümünü gözden geçirin ve daha derine inmek istiyorsanız (veya sadece istiyorsanız), bu araçlar hakkında konuşun.
Recon
Her zaman görevinizi mümkün olan en basit yolla gerçekleştirmeye çalışın. Windows Hata Ayıklayıcı ile başlamak, bir başlangıç noktası için aşırıya kaçar ve ilgili olayları / sıralarını tespit etmek biraz daha zor olur.
The SysInternals Suite'i henüz indirip yüklemediyseniz , şimdi yapmalısınız. En azından neyin yanlış gittiğini tespit etmek için ilk denemeler için Process Explorer ve Process Monitor'e ihtiyacınız olacak. Bu araçların her ikisi de * .zip dosyası olarak indirebileceğiniz paketin bir parçasıdır, ancak zayıf bir ağ bağlantınız varsa, daha hızlı işlem yapmak için iki aracı ayrı ayrı indirmeyi seçebilirsiniz.
Paketi / araçları sisteminizde uygun bir yere çıkarın (büyük ölçüde kişisel tercihiniz). Varsayılan Windows unzip yardımcı programını kullanıyorsanız , arşivi açmadan önce Zone dosyasını kaldırmak istersiniz . Bölge dosya işletim bilir nasıl "bu dosya internetten indirilen [...] Kendi riski [...] ile [...] işaretini kutu çalışacak". Eminim daha önce bir pop-up kutusunda buna benzer bir mesaj görmüşsünüzdür. Genellikle pop-up'ın sol alt kısmında, bir kez değiştirirseniz kararınızın ilerleyişini hatırlayacak küçük bir onay kutusu bulunur.
Onay kutusunu görmenin başka bir yolu, indirdiğiniz dosyada -> Özellikler'e sağ tıklamaktır. Onay kutusunun Genel sekmesinin altında olması gerekir . Bu onay kutusunun bir kez değiştirilmesi, bölge dosyasını ikili dosyadan kaldıracaktır (bir yan not olarak , bölge dosyası söz konusu ikili dosyanın alternatif bir veri akışında saklanır - ancak bu başka bir tartışmadır. Şimdilik, sadece açılır pencereleri kullanın veya bölge dosyalarını değiştirmek için dosya özellikleri arabirimleri .
Varsayılan Windows zip aracıyla paketini açmadan önce bölge dosyasını * .zip arşivinden kaldırdığınızdan emin olun. * .Zip dosyasından kaldırmazsanız, ZIP yardımcı programı paketsiz her dosyayı bir bölge dosyasıyla işaretler ve daha sonra pakette çalıştırdığınız ikili pencere için açılır pencereyi alan bir ağrı olur.
Başlayacağımız iki araç var: * Process Explorer (procexp.exe) * Process Monitor ( procmon.exe )
Bunlar hakkında daha fazla bilgi edinmek istiyorsanız ilgili * .chm dosyasına başvurabilirsiniz. Process Explorer ile başlayacağız ve sorunu hızlı bir şekilde tespit edemezsek, o zaman İşlem Monitörüne geçeceğiz (çalıştırılması biraz daha karmaşıktır) ve sorunu hala çözemezsek konuşacağız büyük silahları dışarı çekmektir. Gerçek şu ki, keşif aşamasında bilmem gerekeni sıklıkla buluyorum ve hata ayıklayıcıyı başlatmaya gerek duymuyorum.
Arka Plan ve Anlama
Kayıt defteri, sistemin, dosya uzantılarını nasıl işleyeceğini bilen uygulamalarla ilişkilendiren eşlemeleri depoladığı yerdir. Örneğin, uygulamalara yönelik uzantıların eşlemelerini görüntülemek / değiştirmek için ftype ve assoc komut satırı araçlarını kullanabilirsiniz .
".Txt" uzantılı dosya türünü görmek için terminalden aşağıdaki komutu yürütün.
$> assoc .txt
.txt=txtfile
Bu, .txt dosya uzantısının dosya türlerinin txtfile sınıfına atandığını gösterir . Sonra txtfile sınıfıyla ilişkili uygulamayı görmek için komutu yürütün
$> ftype txtfile
txtfile=%SystemRoot%\system32\notepad.exe %1
Bu araçlar sadece sistem için kayıt defteri ayarlarını okuyor. Bunları kendiniz bir terminalden yürüteceğiniz reg.exe gibi bir araçla görüntüleyebilirsiniz veya çoğu insan GUI kayıt defteri düzenleyicisi regedit.exe'yi tercih eder . Bu konumda, HKEY_CLASSES_ROOT kovanının altına bakacağınız bazı uzantıları, dosya türü sınıflarını ve uygulama ilişkilendirmelerini göreceksiniz. Doğrudan bu kovanın altında hem ".txt" hem de "txtfile" ve elbette çok daha fazlası için bir anahtar bulmalısınız.
Aşağıda, assoc ve ftype yardımcı programlarının kullanımına ilişkin bazı örnekler verilmiştir .
Doç . Dr. için uzantıları beslediğinizden emin olun . Ben zaten bunu biliyorum, ama net dosya uzantıları bir dosya adını sonlandı "nokta ardından 3 veya 4 karakter" dir. Örneğin, application.exe , document.txt veya presentaion.ppt. Doç yarar Verdiğiniz beklemektedir "" ve parametre olarak 3/4 karakter.
$> assoc .exe
.exe=exefile
$> assoc .txt
.txt=txtfile
Ayrı ve farklı dosya uzantısı vardır dosya türü . Birden çok dosya uzantısı tek bir dosya türünde gruplanabilir . ".Html" ve ".htm" ifadelerinin aynı dosya türüyle nasıl eşlendiğini düşünün; yani, "htmlfile". Aşağıdaki örnek bu noktayı daha fazla göstermeye çalışmaktadır.
$> assoc .html
.exe=htmlfile
$> assoc .htm
.txt=htmlfile
$> ftype htmlfile
htmlfile="C:\Program Files (x86)\Internet Explorer\iexplorer.exe" -nohome
Ayrıca, kayıt defterinin HKEY_CLASSES_ROOT kovanının altında aşağıdaki anahtarları içerdiğine dikkat edin.
- HKCR.html
- HKCR.htm
- HKCR \ htmlfile
Bir txt dosyasını yüklemeniz / eklemeniz / paylaşmanız için uygun bir yol varsa, aşağıdaki komutları çalıştırın ve oluşturdukları çıktıya bakacağım.
$> cd \somewhere\easy\for\you\to\find\
$> assoc > extension_associations.txt
$> ftype > filetype_handlers.txt
Artık bu dosyaları yazdığınız klasörleri açabilmeli ve paylaşabilmelisiniz. Aşağıdaki komutlar da dosyaları açmalıdır (oluşturduğunuz dosyaları bulabiliyorsanız).
$> notepad \somewhere\easy\for\you\to\find\extension_associations.txt
$> notepad \somewhere\easy\for\you\to\find\filetype_handlers.txt
Tüm * .txt dosyalarını benimle paylaşamıyorsanız, en azından bu iki komutu çalıştırın ve sonuçlarını yorumlara koyun.
$> assoc .txt
.txt=textfile
$> ftype textfile
textfile="C:\Program Files (x86)\Notepad++\notepad++.exe" "%1"
Orada hiçbir şey görmüyorsanız, bir şeye ayarlayarak başlamalısınız. Bu değişiklikleri yaparken ayrıcalıklarınız yükseldiğinden (yani yönetici ayrıcalıklarına) sahip olduğunuzdan emin olun, aksi takdirde büyük olasılıkla beklediğiniz gibi çalışmazlar.
Süreç araştırmacısı
Gerekirse YAPILACAKLAR
Proses Monitörü
Gerekirse YAPILACAKLAR
Windows Hata Ayıklama Ortamlarını Yükleme