Hozzon létre egy bat fájlt, ami fut másik fájl egy bizonyos idő után az archív

és lehet bármilyen szabványos paraméterekkel, ha az eljárást egy bizonyos idő után a Windows jelent?

Nikodim
A szkript Merlin Cori linket csak célzott felvétel automatikus indítása, ott lent egy példa az alkalmazás futtatása egy előre meghatározott késleltetéssel.







Általában van még egy nagyszerű program Startup Organizer, amely képes irányítani során induláskor, megjelenítés késleltető, és így tovább.

Meg kell hajolni kakraz kezdődött, nem egyszerre, hanem egy bizonyos idő után a rendszer betöltésekor
Sok ilyen programok, például abszolút StartUp.

cscript Delay.vbs /E:C:\Windows\Notepad.exe / D: 10

wscript Delay.vbs /E:C:\Windows\Notepad.exe / D: 10

Egy időben, a magam, írtam egy forgatókönyvet, hogy egyszerűen csak várja a megfelelő időben, amely leírja, hogy delay.vbs:

Option Explicit
Const cdefpause = 10
Dim szünet, argvobj
Állítsa argvobj = WScript.Arguments
ha argvobj.Count <1 then
szünet = cdefpause
más
szünet = CLng (argvobj (0))
végén, ha

wscript.echo wscript.scriptname ": Run Delay" szünet „Másodperc”
MyPause (szünet)

sub MyPause (késleltetés)
dim st
st = most
csinálni, miközben DATEDIFF ( "s", st, most) hurok
end sub
(Kb wscript.Sleep nem tudom =))
A batch fájl neve, mint:

cscript / nologo delay.vbs 300

Gyhm. Hogyan fogja használni a standard ütemező? És AT parancsokkal irányítani a konzolt? AT parancsot futtatni parancsokat és programok a megadott időpontban
bizonyos napokon. Használni az AT parancsok szükség volt
szolgáltatás fut menetrendek.

AT [\\ computername] [[code] [/ TÖRLÉS] | / DELETE [/ IGEN]]
AT [\\ computername] idő [/ Interactive]
[/ Minden: dátum [. ] | / NEXT: dátum [. ]] "Parancs"

\\ számítógép nevét a távoli számítógép. Ha ez a paraméter nincs megadva,
a helyi számítógépen.
kód sorszámát ütemezett feladat.
/ Törlése megszünteti egy ütemezett feladatot. Ha a feladat kódot kihagyjuk,
törli az összes ütemezett feladatok a megadott
számítógépet.
/ Igen megerősíteni a törlési kérelmet, ha törli az összes
ütemezett feladatok.
a dob Idő csapat.
/ Interactive engedély felhasználói beavatkozás feladatait,
A számítógépen futó indítás során a problémát.
/ Minden: dátum [. ] Ismétlés munkát a megadott nap a héten, vagy
hónap. Ha dátum nincs megadva, az aktuális nap
hónap.
/ Következő: dátum [. ] A feladat elindul a következő meghatározott nap a héten
(Például jövő csütörtökön). Ha dátum van hagyva,
Akkor az aktuális hónap napja.
„Team” Windows NT parancs, vagy kötegnevet fayla.Ostaetsya csak mondani az időt, azaz a hozzáadódik az aktuális idő a másodpercek számát: @echo off
beállítva dSEC = 40
beállítva HOU = 0
beállított min = 0
beállítva SEC = 0

a / f "delims =. tokeneket = 1,2,3, *" %% i ( "% TIME%") do (
beállítva HOU = %% i
beállítva MIN = %% j
meghatározott SEC = %% k
)

a / l %% i (0,1,9) tenni, ha% SEC% == %% i beállítva SEC = 0% SEC%
a / l %% i (0,1,9) tenni, ha% MIN% == %% i beállított min = 0% MIN%

set / SEC = SEC + dSEC
ha a / i "% SEC%" geq "60" (
set / SEC = SEC-60
set / MIN = MIN + 1
)

ha a / i "% MIN%" geq "60" (
set / MIN = MIN-60
set / a HOU = HOU + 1
)

ha a / i "% HOU%" geq "24" (
set / a HOU = HOU-24
)

a / l %% i (0,1,9) tenni, ha% SEC% == %% i beállítva SEC = 0% SEC%
a / l %% i (0,1,9) tenni, ha% MIN% == %% i beállított min = 0% MIN%

echo% TIME% -% NTIME%;)

Ghost:
Továbbra is csak idő meghatározásához, azaz a hozzáadódik az aktuális idő a másodpercek számát:
akkor írj egy batch fájl így néz ki, hogy indul el jegyzetfüzetbe 30 másodperc után?

Tulajdonképpen valami ilyesmit: @echo off
beállítva dSEC = 30
beállítva HOU = 0
beállított min = 0
beállítva SEC = 0

a / f "delims =. tokeneket = 1,2,3, *" %% i ( "% TIME%") do (
beállítva HOU = %% i






beállítva MIN = %% j
meghatározott SEC = %% k
)

a / l %% i (0,1,9) tenni, ha% SEC% == %% i beállítva SEC = 0% SEC%
a / l %% i (0,1,9) tenni, ha% MIN% == %% i beállított min = 0% MIN%

set / SEC = SEC + dSEC
ha a / i "% SEC%" geq "60" (
set / SEC = SEC-60
set / MIN = MIN + 1
)

ha a / i "% MIN%" geq "60" (
set / MIN = MIN-60
set / a HOU = HOU + 1
)

ha a / i "% HOU%" geq "24" (
set / a HOU = HOU-24
)

a / l %% i (0,1,9) tenni, ha% SEC% == %% i beállítva SEC = 0% SEC%
a / l %% i (0,1,9) tenni, ha% MIN% == %% i beállított min = 0% MIN%

at% NTIME% / interaktív% Windir% \ notepad.exeTolko itt ez a szörnyeteg (ütemező jelenti) valamilyen oknál fogva, a második pedig nem vették fel, azaz minimális időköz - percig. (I am looking for a megoldást.

szellem
munka, hogy csak ott fut, mivel minden folyamat csak egy fájl van rendelve a saját ID, de van egy másik kérdés, hogy egy batch file regisztrálni Grupa fájl is fut, különböző időközönként és lehetőleg másodperc

Néhány másodperc, amíg kiderül - nem akar az ütemező velük dolgozni. (Csak időközönként egy perces hogyan :. @echo off
ha "% 1" == "" exit
1 start%
ha "% 2" == "" exit

beállítva HOU = 0
beállított min = 0

a / f "delims =. zsetonok = 1,2, *" %% i ( "% TIME%") do (
beállítva HOU = %% i
beállítva MIN = %% j
)

a / l %% i (0,1,9) tenni, ha% MIN% == %% i beállított min = 0% MIN%

ha a / i "% MIN%" geq "60" (
set / MIN = MIN-60
set / a HOU = HOU + 1
)

ha a / i "% HOU%" geq "24" (
set / a HOU = HOU-24
)

a / l %% i (0,1,9) tenni, ha% MIN% == %% i beállított min = 0% MIN%

meghatározott NTIME =% Houston%:% MIN%: 00
at% NTIME% / interaktív D: \ myStart.cmd% 2% 3% 4% 5% 6% 7% 8% 9Zapuskat, mint például: myStart.cmd% windir% \ system32 \ freecell.exe% windir% \ system32 \ sol.exe

szellem
hogy valami nem működik többfeladatos:
például azt kell futtatni ACDSee egy perc alatt, de miután 2 Winamp
hogyan helyesen írni?
ez hogyan írtam:
@echo off
ha "% 1" == "" exit
1 start%
ha "% 2" == "" exit

beállítva HOU = 0
beállított min = 0

a / f "delims =. zsetonok = 1,2, *" %% i ( "% TIME%") do (
beállítva HOU = %% i
beállítva MIN = %% j
)

a / l %% i (0,1,9) tenni, ha% MIN% == %% i beállított min = 0% MIN%

ha a / i "% MIN%" geq "60" (
set / MIN = MIN-60
set / a HOU = HOU + 1
)

ha a / i "% HOU%" geq "24" (
set / a HOU = HOU-24
)

a / l %% i (0,1,9) tenni, ha% MIN% == %% i beállított min = 0% MIN%

meghatározott NTIME =% Houston%:% MIN%: 00
at% NTIME% / interaktív "C: \ Program Files \ ACD Systems \ ACDSee \ 7.0 \ ACDSee7.exe" "C: \ Program Files \ Winamp \ Winamp.exe"

de ez nem eke megfelelően, azaz a Nem indul el a probléma :(

Nikodim
Létrehoz myStart.cmd fájlt (a mappa a D: \, például): @ echo off
ha '% 1' == '' exit
start "myStart" % 1
ha '% 2' == '' exit

beállítva HOU = 0
beállított min = 0

a / f "delims =. zsetonok = 1,2, *" %% i ( "% TIME%") do (
beállítva HOU = %% i
beállítva MIN = %% j
)

a / l %% i (0,1,9) tenni, ha% MIN% == %% i beállított min = 0% MIN%

ha a / i "% MIN%" geq "60" (
set / MIN = MIN-60
set / a HOU = HOU + 1
)

ha a / i "% HOU%" geq "24" (
set / a HOU = HOU-24
)

a / l %% i (0,1,9) tenni, ha% MIN% == %% i beállított min = 0% MIN%

meghatározott NTIME =% Houston%:% MIN%: 00
at% NTIME% / interaktív D: \ myStart.cmd% 2% 3% 4% 5% 6% 7% 8% 9And akkor tegye be a Startup: D: \ myStart.cmd „C: \ Program Files \ ACD Systems \ ACDSee \ 7.0 \ ACDSee7.exe "" C: \ Program Files \ Winamp \ Winamp.exe "

Ghost:
Itt van a dolog, csak akkor fut Mystart.cmd és mindent, és fuss ez 10 másodperc helyett 1 percig, és az előző batch fájlt is indított 10 másodperc helyett egy percre, ha a kutya elásva?

Nikodim
HZ. Azt vizsgáltuk - ez működik: miután futtatja a batch fájlt, a program futtatásához először; várja meg, amíg a következő percben (lehet kevesebb, mint 60 másodperc), és megkezdi a második prog; Következő egy olyan program fut, 1 perces időközönként. A myStart.cmd és le kell futtatni - és onnan a harmadik vonal fut maga a program. (

több alkalommal ellenőrizni 2 számítógépek, nem eke, fut csak mystart.cmd és mindent :(

Gyhm. Fura. Talán jobb lenne erre? TurboPascal'e levelet egy ilyen program: felhasználások
dos;

var
H, m, S1, S2, S0: szó;
NeedSec, WaitSec, Err: integer;

kezdődik
ha ParamCount = 0, akkor kilépés;
Val (ParamStr (1), NeedSec, err);
WaitSec: = 0;
míg WaitSec <> NeedSec nem kezdődik
getTime (h, m, s1, S0);
ismételje getTime (h, m, s2, S0), míg S2 <> s1;
Inc (WaitSec);
végén;
end.Kompiliruem és kap wait.exe fájlt (lásd. a mellékletet). Mi dobd a system32 mappában, majd hívja a batch fájlt a „hány másodpercig kell várni”, például: várjon, 10i csinálni: hozzon létre myStart.dat fájlt, például: 10 | C: \ WINDOWS \ notepad.exe
10 | C: \ WINDOWS \ system32 \ sol.exeA az indító fájl lökést myStart.cmd: @echo off
a / f "jelzőt = 1, * delims = |" %% i (myStart.dat) do (
várjon %% i
start "" "%% j"
) Vagy nem maga a fájl és csapata elindítása háttér-üzemmódban: @ Indítsa „myStart” / b myStart.cmd

Bit újra.
Mert VBScript nem kell semmilyen fordítóprogramok, IMHO ritkán találni egy autó, ahol nem volt. Ezért vár a lehetséges felhasználása delay.vbs file:

Option Explicit
Const cdefpause = 10
homályos szünet
dim argvobj
Állítsa argvobj = WScript.Arguments
ha argvobj.Count <1 then
szünet = cdefpause
más
szünet = CLng (argvobj (0))
végén, ha
wscript.echo wscript.scriptname ": Run Delay" szünet „Másodperc”
MyPause (szünet)

sub MyPause (késleltetés)
Wscript.Sleep késleltetés * 1000
end sub
Tedd ezt a fájlt, például a „C:”
És írni egy batch fájlt:

cscript / nologo C: \ delay.vbs 10
"C: \ Program Files \ ACD Systems \ ACDSee \ 7.0 \ ACDSee7.exe"
cscript / nologo C: \ delay.vbs 20
"C: \ Program Files \ Winamp \ Winamp.exe"

Azt is könnyen kombinálható egy batch fájlt, a javasolt Ghost