Palvelimellani pyörii batch script kutsuen erinäisiä sovelluksia ikuisessa silmukassa. Palvelin buuttaa itsensä automaattisesti muutaman kuukauden välein.
Buuttaus epäonnistuu, kun batch script on ajossa. Syynä on todennäköisesti se, että tietokone sammuttaa ensin sovelluksen, jota bat script on kutsunut. Bat script käynnistää sovelluksen kuitenkin uudestaan aina kun tietokone on sen sammuttanut.
Onko bat scriptissä mahdollista havaita, että tietokone on sammuttamassa itseään, ja jättää sovelluksia kutsumatta?
Miten muuten tilanteen saisi korjattua? Pitäisikö kirjoittaa esim. jokin pieni c++ -palvelinsofta, joka lopettaa bat scriptin havaittuaan tietokoneen olevan buuttaamassa?
Moi Tepi_78!
Millä alustalla sun palvelimes pyörii?
No sehän on selvästi toi FreeBSD kun "bat scriptejä" pyöritetään
Heippa taas!
Jos on näin niin tsekkaa tämä
joo kyl se vähä freebsd:ltä vaikuttaa
Heippa kaikki!
Niin.
Terveisin qeijo!
Skripti pyörii Windows-palvelimella.
TASKKILL:illä saa windows:issa tapettua prosesseja :)
eli varmaan joku:
TASKKILL /F /FI "WINDOWTITLE eq c:\WINDOWS\system32\cmd.exe"
vois tulla kysymykseen.
olettaen siis että scripti pyörii komentokehote ikkunassa :)
Edit:
Tulipas vähän huonosti luettua tuo kysymys, TASKLIST komennolla saa pyörivät prosessit pollattua.
TASKLIST /FI "IMAGENAME eq shutdown.exe" voisi toimia...
suomenkielisessä saattaa vaatia filtterin 'IMAGENAME' tilalle 'VEDOSNIMI'.
Tosin muistelen että tasklist ei palauta errorcode:a joten scriptissä joutuu sit vähän kikkailemaan
Moikka taas Tepi_78!
Kun kerran kyseessä ompi Windows systeemi niin sun kannattais hoidella koko homma windows palveluna (windows service). Mikäli VB(.NET) tai C# taipuu niin SharpDevelop tarjoaa valmiin templaatin windows palvelun luontiin. Täältä löytyy lisää aiheesta & impattavaa.
Aihe on jo aika vanha, joten et voi enää vastata siihen.