Windows 8.1'de arka planda birden fazla program başlatmak


1

Pencerelerde üç program başlatmak, hepsini ise arka planda yani penceresiz başlatmak istiyorum.

İki yol buldum (her ikisi de yarasayı gizlemek için vb komut dosyasını kullanarak)

Set WshShell = WScript.CreateObject ("WScript.Shell") obj =   WshShell.Run ("H: \ test.bat", 0) set WshShell = Hiçbir şey http://answers.yahoo.com/question/index?qid=20071011212557AAofTy6 )

Ve burada SU'da bir tane daha:

Bu bir metin satırını dosya olarak kaydet invisible.vbs:

CreateObject ("Wscript.Shell"). "" "" Komutunu çalıştırın     & Sons; WScript.Arguments (0) & amp; "" "", 0     Yanlış

Herhangi bir programı veya toplu iş dosyasını görünmez bir şekilde çalıştırmak için bu şekilde kullanın:

wscript.exe     "C: \ Wherever \ invisible.vbs" "C: \ Bazı     Başka bir yer \ MyBatchFile.bat "

Ayrıca bir iki argüman listesini sadece / iki ile kullanabilmek / iletebilmek için   ikili alıntı

CreateObject ("Wscript.Shell"). Çalıştır ""     & Sons; WScript.Arguments (0) & amp; "", 0     Yanlış

Örnek: Invisible.vbs "Kill.vbs ME.exe" Kaynak : https://superuser.com/a/62646/301368

Yapmak istediğim, birden çok programı ve hepsini arka planda açmak, ancak bunu kullandığımda her birini ayrı ayrı başlatmam gerekiyor.

Linux'ta olsam kolay olurdu:

#!/bin/bash
./program1 -args &
./program2 -args &
./program3 -args &

Bu nasıl pencerelerde başarılır? (8.1'i kullanıyorum) ancak diğer sürümler için yeterince genel olabileceğini tahmin ediyorum.

(Herhangi bir çözümü VBS / C / bat / başka ne işe yararsa kabul ediyorum)


1
Kullanırsanız & komut satırından bir operatör (veya bir toplu iş dosyası), ardından başka bir komut (ve isterseniz tercih ederseniz) program yürütmenin bitmesini beklemez, ancak bir sonraki komuta devam eder. Böylece VBScript'i komutlarınızla çalıştırabilir ve bunları bu şekilde bir araya getirebilirsiniz. stackoverflow.com/questions/8055371/...
JSanchez

Yanıtlar:


2

Sadece kullan Wscript.Shell.Run yöntemi birçok kez uygulayın ve geri dönmeyi beklememeye dikkat edin (3. sırayı yanlış olarak ayarlayın).

Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "program1.exe", 0, False
WshShell.Run "program2.exe", 0, False
WshShell.Run "program3.exe", 0, False

Her programın argümanını nasıl geçerim? WshShell.Run "program2.exe -args", 0, Yanlış ?
Mansueli
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.