Bazen bir .bat dosyasını cmd penceresi açılmadan çalıştırmak isteriz , bu işi yapmanın değişik yöntemleri olabilir fakat en kolayı bu .bat dosyasını gizli modda çalıştıracak bir .vbs dosyasıdır , örnek
vermek gerekirse ; ben hesap makinasını çalıştırmak için aşağıdaki .bat dosyasını kullanacağım:
@echo off start calc
üstteki kodları bir notepad e yapıştırıp ve Dosya - Farklı Kaydet... seçeneğine tıklayın
Açılan pencerede herhangi bir isim verin mesela hesap.bat ve uzantısı .bat olarak kaydedip çalıştırın
kısa süreli bir cmd ekranının açıldığını farketmişsinizdir iste amacımız onun hiç açılmamasını sağlamak bunu da bir .vbs ile yapacağız , aşağıdaki .vbs kodlarında .bat dosyanızın ismini ve yolunu belirtirseniz bu vbs yi çalıştırdığınızda o cmd penceresi açılmadan .bat dosyası çalışacaktır.
Set WshShell = CreateObject("WScript.Shell") WshShell.Run chr(34) & "hesap.bat" & Chr(34), 0 Set WshShell = Nothing
Elbetteki bir programı direkt .vbs ile de calıştırabilirsiniz ama bu konumuzun dışındadır , Peki bu kodlar nerede işimize yarar derseniz ; En basitinden bazen scirpt dilindeki iki satırlık kod programlama dilindeki onlarca satırlık koda eş değerde olabiliyor , basit bir program yazarken .bat ile uygulatmak istediğiniz ama cmd penceresinin açılmasını istemediğiniz durumlarda bu yöntemi rahatlıkla kullanabilirsiniz.
misal exploreri yeniden başlat sağ tıkta onu nasıl yapacağız cmd.exe /c taskkill /f /im explorer.exe & start explorer.exe command ekledim örnek açısından soruyorum
Aynen öyle
o verdiğiniz örnekteki gibi yolu aldıktan sonra vbs olarak kayıt edip o vbs yimi sağ tuşa atayacağım
"hesap.bat" yerine mesela "C:\deneme\test.bat"
tam olarak bat dosyasının ismini ve yolunu nereye girecegim tam anlayamadım yardım edermisiniz
Yorumun için teşekürler.
Görev Zamanlayıcı ile yapılıyor yeni görev oluşturup kullanıcı yerine System yazın
Yorumun için teşekürler ibrahim, selamlar
Çok teşekkürler. Tamda böyle bir kod arıyordum. Bat dosyalarını çok kullanırım ama vbs dosyası nedir bilmem. Sayenizde hem öğrendik hem kullanıyoruz.
Normalde exe yi gizli modda çalıştırabiliriz fakat bu exe bat dosyasına bağlı olduğundan bat dosyasındaki parametrelerle oynamak gerek , vbs ile batı gizleyebiliriz ama gizlediğimiz şey zaten exe yi çalıştırdığından ancak bat ın çalıştır komutlarına gizle parametresini ekleyebilirsek istediğin olacaktır.
Hocam vermiş olduğunuz bilgi çok işime yaradı teşekkürederim. Ama bir sorum olacak şimdi benim yapmak istediğim şu kısaca anlatayım. Bir adet .bat dosyamız var ama bunun içinde yazılı olan kod bir .exe programını çalıştırıyor yani .bat dosyası olmadan .exe programı çalışmıyor .exe programından çalıştırdıgım zaman .bat ile çalıştırmadığım için doğal olarak çalışmıyor yani .bat ve .exe dosyası senkroze edilmiş .bat ile çalışıyor program. yapmak istediğim her ikisininde arka planda çalışması .bat çalıştırdıgımda kendiliğinden kaybolup .exe programı açılıyor (commandda, CMD de açılıyor) benim istediğim bu .exe dosyasınında bilgisayar açıldığı anda hiç görünmeden arkaplanda çalışması. Böyle birşey yapmak mümkünmü ?