Files
noteki/pyinstaller_guide.md
git_alhan 9f3a599b79 Initial commit: Noteki v1.0
- Modern sticky notes app for Windows
- PySide6 full-screen transparent canvas
- System tray integration, global Alt+N hotkey
- Session management, undo/redo, auto-save
- Custom color palette with dynamic contrast
- Pin notes always-on-top, Tab navigation
- Windows Named Mutex single-instance guard
2026-05-21 04:13:45 +03:00

3.8 KiB
Raw Blame History

Sticky Canvas — EXE Paketleme ve Windows Başlangıç Kılavuzu

Bu kılavuz, uygulamanızı tek bir .exe dosyası haline getirmeyi ve "Windows ile Birlikte Başlat" seçeneğinin arka planda nasıl çalıştığınııklar.


1. Uygulamayı Standart EXE Haline Getirme (PyInstaller)

Uygulamanızı tek bir dosya (.exe) haline getirmek için PyInstaller kütüphanesini kullanabilirsiniz.

Adım 1: Gerekli Kütüphaneleri Yükleyin

PowerShell veya Komut İstemi'ni açıp şu komutları çalıştırın:

pip install pyinstaller pillow

(Not: pillow, ikon dönüştürme için kullanılacaktır.)

Adım 2: PNG İkonunu ICO Formatına Dönüştürün

Windows, .exe dosyalarının masaüstü ve dosya gezgini ikonları için özel .ico formatını şart koşar. Aşağıdaki komutla mevcut icon.png dosyasını otomatik olarak icon.ico formatına dönüştürebilirsiniz:

python -c "from PIL import Image; Image.open('assets/icon.png').save('assets/icon.ico', format='ICO')"

Bu komut, assets klasörü altında icon.ico adında uyumlu bir Windows ikon dosyası oluşturacaktır.

Adım 3: PyInstaller ile Paketleyin

Şimdi projeyi tek bir .exe olarak paketlemek için şu komutu çalıştırın:

pyinstaller --noconsole --onefile --icon="assets/icon.ico" --add-data "assets;assets" main.py

Parametrelerin Anlamları:

  • --noconsole: Uygulama açıldığında arkada siyah bir komut satırı (CMD) penceresinin açılmasını engeller. Tamamen pürüzsüz bir arayüz sunar.
  • --onefile: Tüm kaynakları, ikonları ve kütüphaneleri (PySide6 vb.) tek bir .exe dosyasında birleştirir.
  • --icon="assets/icon.ico": EXE dosyasının Windows üzerindeki resmi simgesini ayarlar.
  • --add-data "assets;assets": Uygulamanın kullandığı resim, ikon ve diğer varlıkları içeren assets klasörünü paket içerisine gömer.

Adım 4: Sonuç

İşlem tamamlandığında, proje klasörünüzde iki yeni dizin oluşacaktır:

  1. build/ (Geçici derleme dosyaları)
  2. dist/ (Paketlenmiş nihai uygulamayı barındırır)

dist/main.exe dosyasını bulup adını sticky_canvas.exe veya istediğiniz gibi değiştirebilir, doğrudan çalıştırıp kullanmaya başlayabilirsiniz! build klasörünü ve .spec dosyasını güvenle silebilirsiniz.


2. "Windows ile Birlikte Başlat" Nasıl Çalışıyor?

Uygulamanın Ayarlar penceresindeki "Windows ile birlikte başlat" seçeneği, Windows işletim sisteminin yerleşik otomatik başlatma mekanizmasını kullanır.

Arka Plandaki Çalışma Mekanizması:

  1. Windows Kayıt Defteri (Registry) Entegrasyonu: Windows, sistem açıldığında otomatik olarak çalıştırılması gereken programların listesini Registry üzerinde şu adreste tutar: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run

  2. Kayıt Ekleme (Aktif Edildiğinde): Bu ayar açıldığında, uygulamamız Registry'de bu dizinin altına "Sticky Canvas" adında yeni bir anahtar (String Value) ekler.

    • Geliştirici Modunda (Script): Değer olarak Python yorumlayıcısının yolunu ve main.py dosyamızın tam yolunu yazar: "[PYTHON_YOLU]\python.exe" "[PROJE_YOLU]\main.py"
    • Paketlenmiş Modda (EXE): Değer olarak doğrudan derlenmiş .exe dosyamızın tam yolunu yazar: "[EXE_YOLU]\sticky_canvas.exe"
  3. Kayıt Silme (Devre Dışı Bırakıldığında): Bu ayar kapatıldığında, uygulamamız Registry'deki "Sticky Canvas" anahtarını siler ve Windows açılışında otomatik başlama durdurulur.

  4. Kullanıcı Yetkisi: HKEY_CURRENT_USER (HKCU) kullanıldığı için bu işlem Yönetici yetkisi (UAC / Administrator) gerektirmez. Herhangi bir kullanıcı hesabı altında tamamen güvenli ve sorunsuz şekilde çalışır.