.exe ve .bat dosyalarının 1den fazla açılabilmesi

milatsonturk (1) 7 ay önce sordu

birçok açılan .bat veya .exe dosyasının sadece 1 kopya açılmasını nasıl sağlayabilirim.?
videoda gösterdiğim gibi birçok açılabiliyor 
Video

Toplam 1 cevap


alattin (17095) 7 ay önce cevapladı

bat dosyaları için şöyle bir şey yapabilirsin. İlk aklıma gelen;

bat dosyasının içine ilk satıra bir dosya oluşturma kodu ekle:

copy NUL "%TEMP%\flag.tmp"

Daha sonra  bat dosyana bir kontrol kodu koy, yani şöyle olacak:

if exist "%TEMP%\flag.tmp" (
    echo Dosya zaten çalışıyor. Çıkılıyor ...
    exit /b 1
)
else (
copy NUL "%TEMP%\flag.tmp"
)

// Diğer kodlar

//İşler bitince dosyayı sil

del "%TEMP%\flag.tmp"

Bu kod flag dosyasını kontrol edecek varsa çalışmayı yarıda bırakacak. Yoksa önce flag dosyanı oluşturup sonra diğer işlemleri yapacak. 

Şöyle bir şey Exe içinde yapabilirsin, belki bat içinde kullanabilirsin biraz oynayarak çok düşünmedim üzerinde:

SETLOCAL EnableExtensions
SET EXE=CalculatorApp.exe

FOR /F %%x IN ('tasklist /NH /FI "IMAGENAME eq %EXE%"') DO IF NOT %%x == %EXE% ( 
  GOTO calismiyor
) ELSE (  
  GOTO calisiyor
)
...
:calisiyor
ECHO Uygulama calisiyor
PAUSE

:calismiyor
ECHO Uygulama calismiyor
PAUSE

Mesela bu uygulama Hesap makinesi o an çalışıyor mu onu kontrol ediyor. Sen de burada :calisiyor veya :calismiyor alanlarına çalıştırmak istediğin uygulamayı ekleyebilirsin.

Örnek üzerinden ilerleyebilirsin.