Vbs de bir dosyanın varolup olmadığının kontrolü


Vbs ile dosya kontrolü
Vbs dediğimiz Visual basic scriptlerinde bir işlem yapmadan önce dosya veya klasörün var olup olmadığının kontrolü oldukça önemlidir. Bir if - else döngüsünde bu kontrol bize duruma göre işlem yapma avantajı


sağlar mesela ; her sistemde yerel grup ilkesi düzenleyicisi bulunmaz , ve script ile yapılan bir işlemde gpedit.msc dediğimiz bu dosyanın bulunması şart ise , öncelikle dosya kontrolü yaptırmamız gerekecektir. Bizler işlemleri daha anlaşılır kılmak için masaüstümüzdeki veya belgelerimde yeralan bir dosyanın kontrolünü yaptıracağız.

Vbs ile dosya kontrolü nasıl yaptırılır

1. Öncelikle varlığını kontrol ettireceğim dosyayı kolaylık olması açısından "C:\" dizinimde oluşturuyorum "diskspace.txt"

Dizindeki dosya kontrolü

2. Ardından aşağıdaki kodları bir not defterine yapıştırıyorum ve bir isim verip uzantısı vbs olacak şekilde kaydediyorum.

Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FileExists("C:\diskspace.txt") Then
    Wscript.Echo "Dosya bulundu."
Else
    Wscript.Echo "Dosya bulunamadı."
End If

Script çalıştırıldığında objFSO.FileExists den sonra gelen ve yolunu belirttiğimiz "diskspace.txt" dosyasının varlığını kontrol edecek ve bulursa "Dosya bulundu" bilgisini verecek eğer dosya yoksa "Dosya Bulunamadı" diyecektir.

Dosya kontrolü sonucu script çıktısı

Scriptin düzgün çalışıp çalışmadığını kontrol etmek için "C:\diskspace.txt" dosyasının ismini değiştirip veya silip tekrar kontrol yaptırırsak bu sefer üstte resimdeki ikinci uyarıyı vermesi gerekir.

Çevre değişkeni kullanarak dosya araması yaptırmak

Burada scriptin daha geliştirilmesi için bekide Environment Variables dediğimiz çevre değişkeni ilavesi yapılabilir bu durumda kodlara aşağıdaki ilaveyi yapmamız yerinde olacaktır.

Set WshShell = WScript.CreateObject("Wscript.Shell")
vAPPDATA = WshShell.ExpandEnvironmentStrings("%SystemDrive%\")

Set WshShell = CreateObject("Scripting.FileSystemObject")
If WshShell.FileExists(vAPPDATA & "\diskspace.txt") Then
    Wscript.Echo "The file exist."
Else
    Wscript.Echo "The file does not exist."
End If

Üstteki kodlarda sistem hangi dizinde kurulu ise bu dizinde "diskspace.txt" dosyasını ara dediğimiz için script çok daha esnek hale geldi mesela windowsunu F dizinine kurmuş birinde aynı dosya varmı yokmu diye ilk kodlarla aratamayız çünkü direkt yolu belirtmişiz "C:\" fakat ikinci kodlarda harfin önemi yokltur ve windowsun kurulu olduğu dizinde ilgili dosyayı arayacaktır. Üstteki kodları sayfa sonundaki indirme linkinden edinebilirsiniz

- vbs de mesaj kutuları Burada

- Vbs de klavye tuş kombinasyonları Burada

- Vbs Registry değerini düzgün okumuyor Burada

- Vbs de alınan içinde dosya uzantısı yok hatası Burada

- Vbs de veriyi registry değeri ile karşılaştırma Burada

- Vbs de Klasör veya Dosya seçim diyalog penceresi Burada


2 Yorum Var

Yorum Ekle

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

Captcha