Forum
Merhabalar,
İlginiz için şimdiden teşekkür ederim.
Birbirine bağlı iki tane VBS dosyam var. İlkinin, oturum açılmış olan user hakları ile çalışmasını istiyorum. İlk vbs içerisinde istediğim koşul sağlandığında direk ikinci VBS çalıştırmaktadır. Bu ikinci vbs'i de yönetici olarak çalıştırmak istiyorum. (admin oturumu şifrelidir. VBS içerisine şifre girerek otomatik olarak yönetici hakları ile çalışmasını istiyorum.)
Tam tersi mantık da işimi görecektir. Çıkış dosyam bir cmd dosyası ya da vbs olabilir ve bunu admin hakları ile çalıştırabilirim. Ancak 1. vbs'im kendi içerisinde user hakları ile çalışması gerektiğini bilmeli. Bunu da yapabilirim.
Aslında amacım şudur. Bir VBS'i çalıştırmak üzere Task Scheduler'da task oluşturdum. VBS içerisinde bir timer var. Çalıştıktan belirli bir süre sonra başka komutlar çalıştıracak. User'ın arka planda çalışmakta olan wscript.exe'yi task manager'dan sonlandıramamasını istiyorum.
Burada işime yarayacak bir yöntemden basedilmiş ancak yapamadım.
Öneride bulunacağınız tüm yöntemler benim için genel anlamda çok faydalı olacaktır. Teşekkür ederim.
Merhaba,
vbscript dosyası direk düzenlenebildiği için exe derlemeniz daha iyi olacaktır. Bir yazımdan alıntı yapıyorum; vb6.0 portable sürümü ile hemen derleyebilirsiniz.
Domain ortamında kullanıcı hesaplarında uygulama çalıştırmanız için yönetici yetkisi gereken durumlar olur
ve kullanıcıya admin şifresini vermeniz yada local admin yetkisi vermeniz sizi çileden çıkaran bir durumdur.
Ancak uygulama desteklemediği için çözümsüz kalırsınız.
Bu yüzden bu durumu sadece o uygulama için çözmeniz gerekir. Bu işlem için VB 6.0 ile hazırlanmış bir modül mevcut.
ve kullanıcıya şifreyi vermek yerine bu uygulama ile admin olarak açılmasını sağlayabilirsiniz.
hazırladığınız vb 6.0 uygulamasına bağlantıdaki adresten modul dosyasını indirerek ekleyiniz
daha sonra form load olayına aşağıdaki kodu kullanıcı bilgileri ile yazınız
[code]
Res = RunAs(username, password, application.exe)
End
[/code]
bu durumda yeni oluşturduğunuz uygulama belirtilen exe dosyasını kullanıcı yetkisi ile açacak
ve kendini kapatacaktır. Böylelikle siz uygulamayı admin yetkisi ile açmış olacaksınız.
ve şifrenizi kullanıcıya vermenize gerek kalmayacaktır.
ancak bu dosyanın ve çalıştırılacak diğer dosyanın kopyalanmasına, silinmene, ve değiştirilmesine karşı
yetki kısıtlaması yapmanız gerekmektedir. aksi durumda exe adını değiştirerek kendi uygulamasının çalışmasını
sağlayabilir.
ayrica uygulamanin kopyalanip baska bir yerde calistirilmasina karsi onlem almamiz gerekiyor
uygulamanin calistirildi klasor farkli ise calistirmasin ve hata versin
[code]
If Lcase(App.Path) = "app.path" Then
Res = RunAs("username", "password", "application.exe")
Else
MsgBox "cakallik yapmayalim"
End If
[/code]
bu durumda baska bir klasore kopyalanip calistirildiginda
cakallik yapmayalim uyarisini verecektir.
Saygılarımla,
Şöyle bir makale vardı. Bir inceleyin isterseniz.
http://www.cozumpark.com/blogs/3party/archive/2017/02/26/runastool-kullanimi.aspx