7.15.2017

Sağ Tuşa Dosya Ekleme


Bu yazımızda sizlere Registry kaydı ile oynayarak Sağ tuş menümüze istediğimiz uzantıyı eklemeyi göstereceğim.

Bunun için (Windows tuşu + R ) ile Çalıştır'ı açıyoruz ve "regedit" yazıyoruz.
Sonra açılan pencerede gördüğümüz şey bu olmalı.
Bu ekrandan sonra




HKEY_CLASSES_ROOT
anahtarını genişletin.

Gördüğünüz gibi burada uzantılar alfabetik sıraya göre dizilmiş. Buradan Sağ Tuş/ Yeni menüsüne eklemek istediğiniz uzantıya gelin ve sağ tıklayıp /yeni/Anahtar" tıklayın. Boşluğa "ShellNew" yazın. ShellNew in içinde sağ tıklayıp "yeni/ Dize Değeri" tıklayın. Boşluğa "NullFile" yazın.

Burada .bat uzantısı için bir örnek göstereceğim.




Yada bunun dışında işinizi daha hızlı bir şekilde yapmanız için size nasıl .reg dosyası yazılacağını göstereceğim.

Öncelikle bir .reg uzantılı dosya oluşturuyoruz. Sonra sağ tıklayıp düzenle diyoruz.

ve içine bunu yazıyoruz:

HTML uzantısı ekle.reg
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.html\ShellNew]
"NullFile"=""
Sonrasında bunu kaydedip çalıştırmamız yeterli.

Birde ben çok uzantı eklemek istediğim için bu işi kolaylaştıracak bir python betiği yazmıştım.
Çalıştırmak için python 3.x sürümü bilgisayarınızda yüklü olmalı.
Bunuda veriyorum:


Uzantı ekle.py
# bu betik bilgisayarınızın sağ tuş/yeni menüsüne dosya eklemenizi sağlar.

from os import system

class Uzanti():
    
    def __init__(self):
        self.GirisMetni = "Windows Registry Editor Version 5.00\n\n"
        self.AnahtarYolu = "[HKEY_CLASSES_ROOT\{}\ShellNew]\n"
        self.Değer = '"NullFile"=""\n\n'
        self.Dosya = "changer"



    def Giris(self):
        
        print("Uzantı eklemek için (.uzantı) yazın.\n Çalıştırmak için (r)yazın.")



    def DosyaYap(self):
        
        regfile = open("{}.reg".format(self.Dosya), "w")
        regfile.write(self.GirisMetni)
        regfile.close()


    def UzantiEkle(self, uzanti):
        regfile = open("{}.reg".format(self.Dosya), "a")
        regfile.write(self.AnahtarYolu.format(uzanti))
        regfile.write(self.Değer)
        regfile.close()



    def Calistir(self):
        
        system("call {}.reg".format(self.Dosya))
        quit()



    def Main(self):
        
        self.Giris()
        self.DosyaYap()
        
        while True:
            girdi = input(" >>> ")
            
            if girdi[0] == ".":
                self.UzantiEkle(girdi)

            elif girdi == "r":
                self.Calistir()

            else:
                print("lütfen düzgün giriş yapınız.")
                self.Giris()
                
                
                
                
if __name__ == "__main__":
    Uzanti().Main()