Hirdetés

Keresés

Új hozzászólás Aktív témák

  • BatchMan
    senior tag

    Egy batch módosítását próbálom elkövetni, hogy bizonyos időközönként (legyen fél óra - 1800s) futtassa a scriptet. Az eredeti kód:

    @echo off
    color 17
    taskkill /F /IM Origin.exe
    "D:\Program Files (x86)\Origin\Origin.exe"
    pause

    Letöltöttem a sleep.exe segédprogramot innen.

    Ahová jutottam:

    @echo off
    color 17
    :label
    taskkill /F /IM Origin.exe
    "D:\Program Files (x86)\Origin\Origin.exe"
    sleep 1800
    goto label

    A baj, hogy csak egyszer fut le (rendszergazdaként futtatom, 64 bites W8 Pro), persze rövid időközökkel próbáltam ki. A sleep.exe ugyanazon mappában van, mint a .bat fájl.

    1. echo off csak akkor javasolt, ha tényleg zavarnak a hibaüzenetek. Különben lehet hasznos info a kiírt üzenetekben. Sőt szoktam ilyet beszúrni: echo "origin elindult"
    2. Bár W8 batch-csel nincs tapasztalatom, szakirodalom szerint ([link] a TIMEOUT parancs lett kifejlesztve erre Win7 óta. A ping-es alternatíva több helyen előjön.
    3. A "D:\Program Files (x86)\Origin\Origin.exe" helyett a
    D:\Progra~1\Origin\Origin.exe
    formát használnám félreértések helyett (ha a W8 ismeri még 8-karakteres figurát)

    good luck!

  • Csontikka
    aktív tag

    Egy batch módosítását próbálom elkövetni, hogy bizonyos időközönként (legyen fél óra - 1800s) futtassa a scriptet. Az eredeti kód:

    @echo off
    color 17
    taskkill /F /IM Origin.exe
    "D:\Program Files (x86)\Origin\Origin.exe"
    pause

    Letöltöttem a sleep.exe segédprogramot innen.

    Ahová jutottam:

    @echo off
    color 17
    :label
    taskkill /F /IM Origin.exe
    "D:\Program Files (x86)\Origin\Origin.exe"
    sleep 1800
    goto label

    A baj, hogy csak egyszer fut le (rendszergazdaként futtatom, 64 bites W8 Pro), persze rövid időközökkel próbáltam ki. A sleep.exe ugyanazon mappában van, mint a .bat fájl.

    Szia,

    a sleep-.exe én úgy tudom nem fut a 64 bites windows-on, mert 16 bites alkalmazás, viszont szerintem a timeout utility ott van a system32-ben, ha nincs akkor pedig ping paranccsal is meg lehet oldani a várakoztatást: (pl. várj 3 mp-et: ping 1.1.1.1 -n 1 -w 3000 > nul)

    Índításhoz pedig a start parancsot használd,különben csak akkor megy tovább a következő sorra, ha bezártad az alkalmazást.

    (Alapértelemezetten olyan, mintha start /wait -el indítanál, ha nem írod ki)

    szerintem így jó lesz:

    @echo off
    color 17
    :label
    taskkill /F /IM Origin.exe
    start /d"D:\Program Files (x86)\Origin" Origin.exe
    timeout 1800
    goto label

    Üdv,
    Csontikka

Új hozzászólás Aktív témák