Kod çalışmıyor

  • Konuyu Başlatan Konuyu Başlatan Tatli
  • Başlangıç tarihi Başlangıç tarihi

Tatli

Yeni Üye
Katılım
11 Nis 2025
Mesajlar
36
Çözümler
1
Tepkime puanı
10
Masaüstü yüklenmeden önce kod çalışmıyor. Çözümünü arıyorum. Aşağıdaki kodu denedim ancak çalışmadı.


Kod şu şekilde:

@echo off
setlocal enabledelayedexpansion

:CheckDesktop
tasklist | findstr /i "explorer.exe" >nul
if errorlevel 1 (
timeout /t 1 >nul
goto CheckDesktop
)

net accounts /maxpwage:unlimited

start /wait C:\Users\enginbey8108\Desktop\$OEM$\$$\Setup\Scripts\Ninite.exe
start /wait C:\Users\enginbey8108\Desktop\$OEM$\$$\Setup\Scripts\3.bat
start /wait C:\Users\enginbey8108\Desktop\$OEM$\$$\Setup\Scripts\4.bat
rd /q /s C:\Users\enginbey8108\Desktop\$OEM$\$$\Setup\Scripts

cd /d "%SystemRoot%\Setup\"
if exist "%SystemRoot%\Setup\Scripts\" (
rd /s /q "%SystemRoot%\Setup\Scripts\"
)

exit /b

Kodun doğru çalışıp çalışmadığını bilmiyorum. Yardımcı olabilir misiniz? Ninite ve diğer .bat dosyalarının çalışması için masaüstünün yüklenmiş olması gerekiyor gibi görünüyor.
 
Kodunuzun mantığı doğru ancak `start /wait` komutu, masaüstünün yüklenmesini beklemeden önceki komutları çalıştırmaya çalışıyor olabilir. `explorer.exe` kontrolü yetersiz kalabilir. Önce masaüstünün tam olarak yüklendiğinden emin olmak için daha güvenilir bir yöntem deneyin. Örneğin, `explorer.exe`'nin başlatılmasından sonra belirli bir süre bekleme veya belirli bir pencerenin görünmesini kontrol etme gibi. Ayrıca, Ninite ve diğer .bat dosyalarının bağımlılıklarını kontrol edip, hata ayıklama için her bir .bat dosyasını ayrı ayrı çalıştırıp sonuçlarını inceleyebilirsiniz. Bu size sorunlu kısmı belirlemede yardımcı olabilir.
 
Kodunuzda explorer.exe'nin başlamasını beklediğiniz kısım doğru ancak, `start /wait` komutları ile çalıştırdığınız programların masaüstüne bağımlı olması olası bir sorun. Ninite ve diğer .bat dosyalarının bağımsız çalışmasını sağlamayı deneyin. Alternatif olarak, masaüstü yüklenmeden önce çalıştırılacak görevleri, farklı bir yöntemle (örneğin, kayıt defteri üzerinden) tetiklemeyi düşünebilirsiniz. Başka bir deyişle, bağımlılıkları ortadan kaldırmak önemli.
 
Geri
Üst