win és ~nohup

Hogy hívják azt a windows feature-t amikor egy gui mentes programot (aminél azért stdout/stdin is előfordulhat, de talán most ez nem lényeges,) konzolból indítok elkezd a háttérben futni, mintha beépítve a linuxbeli "&". Hogy lehet ezt a láthatatlan &-t eltüntetni, vagy mire keressek rá? (Ilyen pl néha az mplayer vagy az xnview nconvert-ere.)
Másik kérdésem ennek egy kicsit fordítottja, hogy lehet egy rávenni egy konzolos programot hogy ne nyisson meg ablakot (újrafordítás nélkül)?

Szerk: ja igen majdnem a lényeg maradt le: az elsőre tökéletes lenne a "start /wait", ha működne:)

Hozzászólások

köszi, én is gondoltam hogy ha máshogy nem megy szolgáltatást csinálok belőle, de nem tudom az mennyi plusz indulási idővel járna, inkább sokszor kellene keveset futni, ezért gondoltam valami más megoldás jobb lenne
szerk: másik probláma a szolgáltatással hogy több példányban is kellene futnia

Szia!

A Windows WScript exe alkalmas WSH scriptek futtatására, amellyel egy konzolos program kimenetét elrejtheted, avagy "kiránthatod alóla a konzolt", így a háttérben fog futni.

A szintaxis a következő:


Set oShell = WScript.CreateObject ("WSCript.shell")
oShell.run "program-eleresi-utja", 0, false

Például:


Set oShell = WScript.CreateObject ("WSCript.shell")
oShell.run "cmd /C dir /b %WINDIR% > \msfileok.txt", 0, false

Fontos, hogy azok elé a windows héjparancsok elé, melyek nem exe-ből indulnak, pl. dir, echo, del, stb., igénylik a parancsértelmezőt, azaz a cmd indítását. Ajánlom, hogy /C kapcsolóval használd, így nem marad a háttérben futás után, egyébként CMD /?.

A kódot mentsd le valami.vbs néven és a wscript.exe-vel futtathatod is, sőt, elvileg önmagától is elindul, ha beírod parancsértelmezőbe, mert alapértelmezésben hozzá van rendelve a wscript.

Sok sikert, üdv,
mba

Es azt hogyan lehet megcsinalni, ha konzolban fut egy proggi, kilepeskor ne csukja be az ablakot?
Nem csak az aktualis progginal, hanem ugy altalaban, tehat ha legkozelebb TC-ben nyomok egy entert egy filmen, akkor az mplayer ablaka ne zarodjon be kilepes utan?

az ize.cmd az ize.bat win nt/xp beli megfelelője (nem ponstosan de ez most nem érdekes), pont azt írtam hogy a bat fájlod végére beszúrod a pause parancsot, az ami végrehajta a cmd v. bat fájlodat, (cmd.exe) ez egy beépített parancs mint pl dir, echo, és vár egy enterre, így nyitva marad a konzolablak, ugyanígy a ping is írható batch fájlba, de úgy is ahogy lentebb írtam az mplayerrel

Ezt en ertem. De tegyuk fel, hogy xy user gepen kell ezt megcsinalnom, nem a sajatomon. Es tobb ilyen xy user van, leulok a gepe ele es futtatnek par konzolos proggit, de ahhoz vagy megirom a megfeleloen parameterezett bat filet, vagy mindig cmd -k paranccsal futtatom. Ez azert zavar, mert (ha jol emlekszem), w9x kornyeken volt ra lehetoseg, hoyg emgmondjam, a konzolos ablakok ne zarodjanak be, nemcsak ez, hanem az osszes. De lehet, hoyg rossul emlekszem.

az egy bug volt, kiszedték:) (gondolom)
ezt a csinálja a gép amit mondok filozófiát nem értem, vagy értesz hozzá és akkor azt csinálja amit elvárhatsz tőle, vagy nem értesz hozzá és azokat fogja a megmondásod alapján végrehajtani amit mások úgy véltek gyakori használat, beépítik a feature-t és könnyen hozzáférhetővé teszik, de ez a konzol megmaradása minek? ( a felhasználóbarát program nem fog konzolba írogatni, ha meg kell neked úgy is megoldod, pl fájltípusonként szerintem nem megerőltető beállítani, ha tényleg sok gépen akarod sok fájltípusra, mivel ez is egy registrí módosítás kattintgatós formája, csinálhatsz ebből egy reg fájlt...)

Így kell indítani: CMD /K (progi-eleresi-utja) és marad az ablak...

Amúgy:


CMD [/A | /U] [/Q] [/D] [/E:ON | /E:OFF] [/F:ON | /F:OFF] [/V:ON | /V:OFF]
    [[/S] [/C | /K] karakterlánc]

/C      Végrehajtja a karakterlánc által megadott parancsot, majd bezárul.
/K      Végrehajtja a karakterlánc által megadott parancsot, majd a képernyőn
        marad.
/S      A /C vagy /K kapcsoló után álló karakterlánc kezelését módosítja (lásd
        alább)
/Q      A visszhang (echo) kikapcsolása
/D      Az AutoRun parancsok kikapcsolása a rendszerleíró adatbázisból
        (lásd alább)
/A      Egy pipe-ba vagy fájlba irányított belső parancs kimenetének
        kényszerítési ANSI formátumba.
/U      Egy pipe-ba vagy fájlba irányított belső parancs kimenetének
        kényszerítési Unicode formátumba.
/T:fg   Az előtér és a háttér színeinek beállítása (lásd: COLOR /?)
/E:ON   Parancsbővítések engedélyezése (lásd alább)
/E:OFF  Parancsbővítések tiltása (lásd alább)
/F:ON   A fájl- és könyvtárnevek kiegészítő karaktereinek engedélyezése (lásd

Üdv.

akkor szájbarágósan: < win+e > / Eszközök / Mappa beállításai / Fájltípusok / avi-t kikeres / visszaállítás opcionálisan ha a következő lépés nem megy / Speciális / műveletekhez mondjuk egy új bejegyzés alapértelmezetté téve mondjujk lejátszás néven / szerkesztés / második sorban mehet a cmd /k ...mplayer.exe "%1" (vagy vmi hasonló)/ aztán sok oké

Nem értem igazából.

Létrehozhatsz egy LNK-t (parancsikont), ami erre a parancsra mutat (nekem működik).
Beírhatod Total Commander Lister hozzárendeléskehez, hogy ha F3-mal "megnézel" egy fájlt, akkor ezt indítsa.
Hozzárendelheted szokványos módon, mint windows program.
Csinálhatsz egy BAT fájlt, ami a start paranccsal elindítja, majd kilép:


@start cmd /K mplayer hogyan-inditsuk-el-az-mplayert-windows-alatt.avi
@exit

Csinálhatsz WSH-t - lásd néhánnyal ezelőtti hozzászólásom - ami elindítja, annyit kell módosítani a soron, hogy a második paraméterben 1-et írsz (ez előtérben indítja, tehát lesz konzolablak hozzá):


Set oShell = WScript.CreateObject ("WSCript.shell")
oShell.run "cmd /K mplayer hogyan-inditsuk-el-az-mplayert-windows-alatt.avi", 1, false

Akkor elmagyarázom ha már nagy nehezen megértettem :)
Celtic szeretné (gépenként) max 10 kattintással megoldani, hogy még az esetlegesen jövőben feltelepített vindózában is ezentúl minden konzolos ablak ("inaktív" felirattal, ahogy megszokta) úgy maradjon és kézzel kelljen becsukni :)

A

start /wait

miért nem működik? Mit csinálsz, és mit produkál?

:)