@echo off
setlocal enabledelayedexpansion

REM IFikoCikariciDialog - COM Registration Script
REM FikoYT Çıkarıcı Dialog (WRL, Resim, Dokümantasyon)

REM Yönetici hakları kontrolü (NET SESSION kullanarak)
net session >nul 2>&1
if %errorlevel% neq 0 (
    echo.
    echo ========================================
    echo HATA: Yönetici Hakları Gerekli!
    echo ========================================
    echo.
    echo Bu komut dosyasını YÖNETİCİ olarak çalıştırmanız gerekiyor.
    echo.
    echo Çözüm:
    echo 1. Komut istemini sağ tıkla
    echo 2. "Yönetici olarak çalıştır" seç
    echo 3. Batch dosyasını tekrar çalıştır
    echo.
    pause
    exit /b 1
)

REM Proje kök dizinini belirle
REM Script yolu: __register__\komponentler\REGISTER_IFikoCikariciDialog.bat
REM Çıkışı: FikatiaV2024 (iki seviye yukarı)
pushd "%~dp0..\.."
for /f "delims=" %%A in ('cd') do set "PROJECT_ROOT=%%A"
popd

REM Python yorumlayıcı yolunu ayarla
set "PYTHON_INTERPRETER=%PROJECT_ROOT%\python312.2\python.exe"

if not exist "%PYTHON_INTERPRETER%" (
    echo.
    echo Hata: Python yorumlayıcısı bulunamadı
    echo Beklenen yol: %PYTHON_INTERPRETER%
    echo.
    pause
    exit /b 1
)

REM Hedef dizine geç
cd /D "%PROJECT_ROOT%\IDialoglar\IFikoCikariciDialog"

REM COM nesne kaydını gerçekleştir
echo.
echo ========================================
echo FikoYT - Çıkarıcı Dialog COM Kaydı
echo ========================================
echo.
echo [DEBUG] Proje Kökü: %PROJECT_ROOT%
echo [DEBUG] Python Yolu: %PYTHON_INTERPRETER%
echo [DEBUG] Hedef Klasör: %PROJECT_ROOT%\IDialoglar\IFikoCikariciDialog
echo.

REM Python registerCom.py'ı çalıştır
"%PYTHON_INTERPRETER%" registerCom.py /register > temp_output.txt 2>&1

REM Çıktıda "Registered" kelimesini ara
findstr /i "Registered" temp_output.txt >nul

if !errorlevel! equ 0 (
    echo [OK] IFikoCikariciDialog COM nesnesi başarıyla kayıt edildi
    echo.
    findstr /i "Registered" temp_output.txt
) else (
    echo [HATA] COM nesne kaydı sırasında hata oluştu
    echo.
    type temp_output.txt
    pause
)

del /f /q temp_output.txt >nul 2>&1

echo.
exit /b 0
