Windows bilgisayarımızda hangi programların kurulu olduğunu öğrenmenin pek çok yolu vardır. Çoğu kullanıcı Denetim Masası > Programlar ve Özellikler kısmından bakar. Ancak geliştiriciler ve sistem yöneticileri için daha esnek bir yol vardır: Windows Registry üzerinden bu bilgileri almak.
🔎 Registry Nedir?
Registry, Windows işletim sisteminde ayarların, program bilgilerinin ve sistem yapılandırmalarının saklandığı bir veritabanıdır.
Her program kurulduğunda Registry’ye bazı bilgiler ekler:
- Program adı (DisplayName)
- Versiyon numarası (DisplayVersion)
- Yayımcı bilgisi
- Kurulum tarihi (InstallDate)
Bu bilgilere Python ile erişerek bilgisayardaki tüm programların listesini alabiliriz.
🐍 Python ile Kurulu Programları Listeleme
Aşağıdaki Python kodu, Registry’den gerekli bilgileri okuyarak kurulu programların adını, sürümünü ve kurulum tarihini ekrana yazdırır:
import winreg
from datetime import datetime
def get_installed_programs():
programs = []
registry_paths = [
r"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall",
r"SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall"
]
for path in registry_paths:
try:
key = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, path)
for i in range(0, winreg.QueryInfoKey(key)[0]):
subkey_name = winreg.EnumKey(key, i)
subkey = winreg.OpenKey(key, subkey_name)
try:
name = winreg.QueryValueEx(subkey, "DisplayName")[0]
# Versiyon bilgisi
version = ""
try:
version = winreg.QueryValueEx(subkey, "DisplayVersion")[0]
except FileNotFoundError:
pass
# Kurulum tarihi
install_date = ""
try:
raw_date = winreg.QueryValueEx(subkey, "InstallDate")[0]
if raw_date.isdigit() and len(raw_date) == 8: # YYYYMMDD formatı
install_date = datetime.strptime(raw_date, "%Y%m%d").strftime("%d.%m.%Y")
else:
install_date = raw_date
except FileNotFoundError:
pass
programs.append((name, version, install_date))
except FileNotFoundError:
continue
except FileNotFoundError:
continue
return programs
if __name__ == "__main__":
for prog, ver, date in get_installed_programs():
print(f"{prog} - {ver} - {date}")
📌 Örnek Çıktı
Programı çalıştırdığınızda terminal ekranında şu tarz bir liste görürsünüz:
Google Chrome - 126.0.6478.127 - 15.07.2025
Microsoft Edge - 127.0.2651.98 - 03.08.2025
VLC Media Player - 3.0.20 -
WinRAR - 6.24 - 21.07.2025
Görüldüğü üzere bazı yazılımların kurulum tarihi boş kalabilir. Bunun nedeni, her programın Registry’ye kurulum tarihi yazmamasıdır.
🎯 Program Ne İşe Yarar?
- Bilgisayarda hangi programların kurulu olduğunu hızlıca öğrenebilirsiniz.
- Program versiyonlarını kontrol ederek güncel olmayan yazılımları tespit edebilirsiniz.
- Sistem yöneticileri bu bilgiyi raporlama veya güvenlik denetimleri için kullanabilir.
- Kullanıcılar kendi bilgisayarındaki yazılımları listelemek, belgelemek veya yedeklemek amacıyla kullanabilir.
⚡ Nasıl Çalıştırılır?
- Yukarıdaki kodu
ProgramlarınListesi.pyadıyla masaüstüne kaydedin. - Windows’ta Terminal (veya Komut İstemi) açın.
- Şu komutu çalıştırın:
cd %USERPROFILE%\Desktop
python ProgramlarınListesi.py
- Ekranda kurulu programların listesi görünecektir ✅
🔹 Bu yöntem, Windows Registry’den bilgi alarak çalıştığı için WMIC veya harici araçlara gerek duymaz.