Python ile Regedit İşlemi

Merhaba arkadaşlar. Yaklaşık 2 aydır bloğa makale ekleyemiyorum işlerimin yoğunluğu nedeniyle..

Bugünkü konumuz Python dili ile yapmış olduğumuz programımızı Windows İşletim Sistemi başlangıcına(startup) nasıl ekleriz? Bu konuyu işleyeceğiz.

Bu işlemi Windows sistemler üzerinde yapacağımız için yeni bir regedit kaydı oluşturmamız gerekiyor.

Pythonda yeni regedit kaydı oluşturmamızı sağlayan kod şu şekildedir:

key=_winreg.OpenKey(_winreg.HKEY_CURRENT_USER,”Software\Microsoft\Windows\CurrentVersion\Run”,
0, _winreg.KEY_ALL_ACCESS)

Evet bu komutu kısaca açıklamak gerekirse;
_winreg.OpenKey ile HKEY_CURRENT_USER altında yeni bir regedit kaydı açtık ve parantezler içinde bu kaydın regeditteki konumunu belirttik.

Daha sonrada aşağıdaki kodu yazmamız gerekiyor;

_winreg.SetValueEx(key, “iso”, 0, _winreg.REG_SZ, “C:\python27python.exe “+ os.getcwdu() + “\kopyala.py”)
key.Close()

Yukardaki kod ise; oluşturacağımız regedit kaydının değerlerini(value) tanımladık (kayıt ismi=iso).
Sonra olarak da key.Close() ile regedit kaydımızı kapattık.

NOT: Eğer Python programımızda böyle bir işlem yapacaksak _winreg modülünü import etmemiz gereklidir.

Şimdi küçük bir uygulamayla bu konuyu pekiştirelim.

Örnek Python programımızın görevi şudur:
C:python27test.txt konumundaki test.txt dosyasını C:\Users\İsmail\Desktop\ konumuna yani masaüstüne iso.txt olarak kopyalamak. Kopyalama işlemi ms-dos komutlarıyla yapılmaktadır(copy komutu). Ve İşletim sistemleriyle ilgili işlemlerde Python kodumuza OS modülünü import etmeyi unutmamamız gerekiyor.

Son olarak bu programdaki en büyük fark şudur ki bu işlem bilgisayar her açıldığında otomatikman gerçekleşmesidir.

Örnek program kodları:

# -*- coding: cp1254 -*-
#Coded by iSo
#Website: www.ismailsaygili.com.tr && www.secwis.com
#Copyright 2013 ©

import os,_winreg 

os.system(“copy C:\python27\test.txt C:\Users\İsmail\Desktop\iso.txt”

key=_winreg.OpenKey(_winreg.HKEY_CURRENT_USER,“Software\Microsoft\Windows\CurrentVersion\Run”,
0, _winreg.KEY_ALL_ACCESS) 

_winreg.SetValueEx(key, “iso”, 0, _winreg.REG_SZ, “C:\python27python.exe “+ os.getcwdu() + “\kopyala.py”

key.Close()

Veya kodları indirmek için tıklayın veya GitHub

Program çalıştıktan sonra:

İyi çalışmalar..

Furkan SANDAL

The following two tabs change content below.
Furkan Sandal
Hayata bilgisayarla gözlerini açan, linux kullanmaktan vazgeçmeyen, ömrünü siber güvenliğe atayan zaat.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir