2016-04-10 29 views
-1

Otomatik sıfırlama .exe dosyasını ruby ​​koduna çalıştırmak istiyorum. Dosyam masaüstünde mevcut. Lütfen Selenium Ruby Webdriver komut dosyasında AutoIT aracı tarafından oluşturulan bir .exe dosyasının nasıl çalıştırılacağı konusunda yardım edin.Otomatik Çalıştır dosyasını ruby ​​ile çalıştır

Sunucum, bir Flash düğmesini tıklatarak bir dosya yüklemem ve "Aç" penceresindeki bir dosyayı açmam gerektiğidir. Ancak, Selenium bir pencere açılır penceresiyle etkileşimde bulunamaz, bu yüzden dosya yolunu doldurmak ve bir .exe dosyasına oluşturmak için AutoIT aracını kullandım. Yapmak istediğim şey şu ki, Selenium'un "Open" penceresi açılır penceresinden sonra AutoIT aracı tarafından üretilen exe dosyasını çalıştırmasını istiyorum.

$driver=Selenium::WebDriver.for :ff 
    $driver.get "http://url/uploadform/contactform.php" 
    $driver.manage.window.maximize 
$driver.find_element(:xpath,".//input[@id='photo']").send_keys("C:/Users/xyz/Desktop/logo_icon.png") 
    $driver.find_element(:xpath,".//input[@id='photo']").click 

    # au3=WIN32OLE.new("C:\\Users\\Aditya\\Desktop\\test.exe") 

file = File.open("C:/Users/Aditya/Desktop/test.exe", "r") 

contents = file.read 

İşte benim AutoIt dosyası test.exe geçerli: Altında benim kodudur.

+0

Welcome SO için ("auto Yolu o dosya"). Problem şu...? Lütfen "[sor]" ve "[mcve]" mesajlarını okuyun. Bize yeterince bilgi vermedin. –

cevap

1

aşağıdaki komutları birine bakmak isteyebilirsiniz:

  • sistemini ("komutu")
  • `command` (backticks) ya da %x{} sözdizimi
  • spawn ("komutu")

Geri döndükleri ve nasıl başlatıldıklarına göre farklılık gösterirler.

command = "C:\\Users\\Aditya\\Desktop\\test.exe" 

system(command) 
%x`#{command}` 
spawn(command) 
+0

Hızlı yanıt için teşekkürler – Aditya1510

0

Dava AutoIt Süreci kullanmış ama herkes toplu dosyayı açmak istiyorsa o yukarıdaki açıklamada @Uzbekjon bahsettiği cevabı kullanabilirsiniz. Sorumun

Bir astar cevabı: Process.exec