# 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ı açı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: ```bash 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: ```bash 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: ```bash 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.