2016-04-01 24 views
0

AutoIt'te bu kodu, makineye açıkça gitmeden ve yapmak zorunda kalmadan farklı bir kullanıcı olarak farklı veya farklı bir ağda oturum açmak istediğim farklı bir makine için çalışmak istiyorum. Yerel masaüstümden çalışmak istiyorum. Sorun, herhangi bir GUI olmadan kimlik doğrulamayı nasıl otomatikleştirebilirim?AutoIt'te farklı bir kullanıcı olarak oturum açılmış aynı veya farklı bir ağdaki farklı bir makinede nasıl mantık yürütürüm?

;Global $machine="computer1" 
Func _populate() 
    Global $machine="computer2" 
    Global $Services = ObjGet("winmgmts:\\" & $machine & "\root\cimv2") 
    Global $ServicesList = $Services.ExecQuery("SELECT * FROM Win32_Service") 
    If IsObj($ServicesList) then 
     _GUICtrlListView_BeginUpdate($ListView1) 
     _GUICtrlListView_BeginUpdate($ListView2) 
     _GUICtrlListView_DeleteAllItems($ListView1) 
     _GUICtrlListView_DeleteAllItems($ListView2) 
     For $Services in $ServicesList 
      if $Services.State = "Running" Then 
       GUICtrlCreateListViewItem($Services.DisplayName & "|" & $Services.Name & "|" & $Services.State , $ListView1) 
      Else 
       GUICtrlCreateListViewItem($Services.DisplayName & "|" & $Services.Name & "|" & $Services.State , $ListView2) 
      EndIf 
     Next 
     _GUICtrlListView_EndUpdate($ListView1) 
     _GUICtrlListView_EndUpdate($ListView2) 
    EndIf 
EndFunc 

"computer1" adlı makinem yerel makinemdir. Yerel makinem olmayan "computer2" için çalışmasını isterim. Ben bu açıklamayı ;Global $machine="computer1"

yorum yapmıyoruz Ayrıca, mantık neden alamadım hangi çalışmıyor.

cevap

0

Kullanım:

Global $Services = ObjGet("winmgmts:\\.\root\cimv2") 

. yerel makineye bir kısa yoldur.

+1

Uzak bir sistem için istiyorsam bu işe yaramıyor. –