Windows Görev Zamanlayıcı VBScript'i Çalıştır

Windows Görev Zamanlayıcı'yı kullanarak bir VBScript'i otomatikleştirmeye çalışıyorum. Ancak cscript.exe + "C: \ ... \ script.vbs" kullanmaya çalıştım ancak çalışmadı. Aynı komutu doğrudan CMD'de ( cscript.exe "C: \ ... \ script.vbs" ) çalıştırmayı da denedim ve çalıştı.

Sorun ne olabilir

EDIT:

Ayarı "Yalnızca kullanıcı oturum açtığında çalıştır" 'a "' dan kullanıcı oturum açıp açmadığını çalıştırın" olarak değiştirmeyi denedim ve çalıştı. Görevimden kullanıcı oturumumu kapatmış olsa bile çalışmasını sağlamak için bir yol olup olmadığını merak ediyorum.

5
"Görevimden kullanıcı oturumu kapattığında bile planlı yapmamın bir yolu olup olmadığını merak ediyorum" - bunun nasıl yapıldığını keşfetmedin mi?
katma yazar paxdiablo, kaynak

6 cevap

Saatlerce süren araştırmalardan sonra, Blake Morrison'ın (Microsoft'tan) bloglarından biri geldi; bundan bahsetti

Bir .vbs/.ps1 komut dosyası çalıştırıyorsanız, bir .cmd/.bat komut dosyasından başlatmayı deneyin

see Help! My Scheduled Task does not run…

Bu blog, Görev Zamanlayıcı'yı kullanırken de birçok kural/ipucu açıklar.

Bu yüzden lütfen VBScript'inizi çağıran bir .cmd/.bat dosyası oluşturun. Örneğin: cscript.exe YourScript.vbs .cmd/.bat komut dosyanızda olur.

3
katma

Bunun gibi bir toplu iş dosyası yazın:

echo "Started!" > c:\foldergoeshere\log.txt
cscript.exe "C:\...\script.vbs" > c:\foldergoeshere\log.txt
echo "Stopped!" > c:\foldergoeshere\log.txt

Sonra toplu iş dosyasını vbs yerine zamanlayın. Bu, çalışmasını engelleyen, neler olduğunu görmenize izin verecektir. Konsolda (CMD) yürütürken görmüş olabileceğiniz herhangi bir hata bunun yerine "Başladı!" ve "Durdu!"

3
katma

Bütün bunlar neyle ilgili? .Cmd/.bat kullanmıyorum ve script çalışıyor! (Burada Windows7)
Benim VBS betiğim (zamanlanmış bir görev olarak) bu 4 senaryoda herhangi bir şekilde çalışıyor:

  1. cscript and option "Run only when user is logged on"
  2. cscript and option "Run whether user is logged on or not"
  3. wscript and option "Run only when user is logged on"
  4. wscript and option "Run whether user is logged on or not"

Sadece 1. senaryoda ekranımda yanıp sönen siyah komut penceresiyle karşılaşıyorum.

Eylem ayarları:

cscript
or
wscript

Sadece bir dosya oluşturan betiğim:

Set objFSO = CreateObject("Scripting.FileSystemObject")
filename = "C:\Temp\" & Hour(Time) & Minute(Time) & Second(Time)
Set objFile = objFSO.CreateTextFile(filename)
1
katma
@lovechillcool - Evet, benim için olması gerektiği gibi çalışıyor. "Kullanıcının oturum açıp açmadığını çalıştır" seçili olduğunda, Görev Zamanlayıcı VBS komut dosyasını giriş yapmasam bile, cscript.exe veya wscript.exe aracılığıyla başarılı bir şekilde çağırır.
katma yazar ZygD, kaynak
Oturumu kapattığınızda işe yarayıp yaramadığını denediniz mi? btw, Win Server 2012 kullanıyorum.
katma yazar lovechillcool, kaynak

.Vbs dosyası görünmez bir şekilde çalışıyor; bu, 'oturum açmış veya değil' seçeneğiyle çalıştırmanın bir sonucudur.

You will not be allowed to interfere with a user using the computer, which means you will be able to help yourself, but not others.

Lütfen Görev Zamanlayıcı Yardım menüsünden aşağıdaki metni okuyun:

Görev Güvenliği İçeriği

Görevin başlatılması planlanan hesap, görev tetiklendiğinde oturum açmamış olsa bile bir görevin çalışması gerektiğini belirtebilirsiniz.

     

Bunu yapmak için, kullanıcının oturum açıp açmadığını Çalıştır etiketli radyo düğmesini seçin.

     

Bu radyo düğmesi seçiliyse, görevleri etkileşimli olarak çalışmaz.

     

Bir görevin etkileşimli olarak çalışmasını sağlamak için Sadece kullanıcı radyoda oturum açtığında Çalıştır düğmesini seçin.

1
katma

Greg answered this https://superuser.com/a/816073

Temelde 2 klasör oluşturmanız gerekir:

Bir klasör oluşturmanız gerekir (veya 64bit pencerelerde iki tane):

(32Bit, her zaman) C: \ Windows \ System32 \ config \ systemprofile \ Desktop

(64Bit) C: \ Windows \ SysWOW64 \ config \ systemprofile \ Desktop

Benim için sorun düzeltildi (ve ben yarasa değil, .vbs dosyasına işaret edebilirdim).

1
katma

Bir kereden fazla, planlanan görev olarak çalışan bir VBScript'in aylarca ve yıllar boyunca iyi çalıştığını, ancak hiçbir şeyin değişmemesine rağmen aniden çalışmayacağını gördüm. Burada ve başka yerde verilen tüm tarifleri kullanarak görevi reaktif hale getirmeye çalıştım, ancak başarılı olamadı. Geçici çözümüm, orijinal ayarlarından kopyalanan tüm ayarları içeren bir yeni planlı görev oluşturmaktı.

0
katma
Windows
Windows
729 Katılımcıların

Windows ile ilgili tüm sorunların çözümüne yanıt arandığı ve paylaşımların yapıldığı bir gruptur. @SerCiTV @Tekpay @Apktanitim kanal/grupların uzantısıdır. https://t.me/joinchat/H1pwvUwqv4etCBtv9Oi_qQ