Vbs de belirli bir süre sonra işlem yaptırma


Vbs de belirli bir süre sonra işlem yaptırma
Gerek Facebookta gerekse yorumlarda takipçilerimiz vbs de işlemleri zamanlama konusunda sorular yöneltmektedirler bunlar bazen ; bir programı veya işlemi belirli dakika/saat sonra başlatma veya bir uygulamayı

çalıştırdıktan belirli bir süre sonra kapatma şeklinde olmaktadır , bu yazımızda örnek kodlarla bir programı belirli bir süre sonra çalıştırmak , belirli bir süre sonra kapatmak veya önce çalıştırıp belirli bir süre sonra kapatma konularını açıklamaya çalışacağız , vbs de kodun çalışmasını geciktirmek için “Sleep” değişkeninden faydalanacağız , zamanlama süresi olarak 1000 rakamı 1 sn yi ifade etmektedir.

1. Vbs çalıştırıldıktan 5 saniye sonra Not defterini açsın

1000 = 1 sn ise burada bekletme süresi olarak 5000 rakamını kullanmamız gerekecek kodu aşağıdaki şekilde oluşturuyoruz.

Dim objShell
Set objShell = WScript.CreateObject( "WScript.Shell" )
WScript.Sleep(5000) '5 saniye bekleyecek
objShell.Run("notepad.exe")
Set objShell = Nothing

Üstteki kodlarda “notepad.exe” yerine çalıştırılmak istenen uygulamanın yolu ve ismi gelecek “WScript.Sleep(5000)” yerine de scriptin beklemesini istediğiniz süre gelecektir mesela:
1 sn = 1000
10 sn = 10000
60 sn = 60000 (1 dk)
60 dk = 3600000 (1 saat)

Not defteri ikonu

2. Vbs çalıştırıldıktan 5 saniye sonra Not defterini kapatsın

Üstteki kodda değiştireceğimiz tek kısım objShell.Run(“notepad.exe”) kısmı olacaktır bu kısmı aşağıdaki şekilde düzenlersek script çalıştırıldıktan 5 sn sonra not defterini kapatacaktır

Dim objShell
Set objShell = WScript.CreateObject( "WScript.Shell" )
WScript.Sleep(5000)
objShell.Run("taskkill /f /im notepad.exe")
Set objShell = Nothing

Eğer üstteki her iki örneği birarada kullanırsak (Yani kodları alt alta yazarsak) Vbs scriptine tıkladıktan 5 sn sonra not defteri açılacak ve yine 5 sn sonra otomatik olarak kapanacaktır, elbette bazı satırları ikişer defa yazmamak için kodu aşağıdaki şekilde kullanabiliriz

Dim objShell
Set objShell = WScript.CreateObject( "WScript.Shell" )
WScript.Sleep(5000)
objShell.Run("notepad.exe")
WScript.Sleep(5000)
objShell.Run("taskkill /f /im notepad.exe")
Set objShell = Nothing

Kodları kendinize göre düzenleyip istediğiniz bir programı süreli şekilde başlatıp sonlandırabilirsiniz ayrıca bu oluşturlan vbs yi zmanlanmışi görevler yardımı ile de çalıştırabilir böylece kullandığınız kodlarda yönetici yetkisi gerektirenler varsa bu engeli aşabilirsiniz. bu örneklerde verilen kodların hazır hallerini aşağıdaki indirme linkinden edinebilirsiniz. konuyla bağlantılı olması sebebi ile; Bir tıkla birden fazla program çalıştırmak için bakınız , vbs ile birden çok programı sonlandırmak için bakınız

Download


2 Yorum Var

Yorum Ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

CAPTCHA