【问题标题】:Ocra generated exe doesn't accepts argumentsOcra 生成的 exe 不接受参数
【发布时间】:2017-04-10 20:36:42
【问题描述】:

我正在使用像这样的 ocra 构建 .exe ocra testing.rb -- sample

这里将“示例”作为参数传递给下面的代码并构建一个 exe

require "selenium-webdriver"

$var = ARGV[0]

driver = Selenium::WebDriver.for :chrome
wait = Selenium::WebDriver::Wait.new(:timeout => 20)

puts $var


driver.navigate.to "https://accounts.google.com/ServiceLogin?service=mail&passive=true&rm=false&continue=https://mail.google.com/mail/&ss=1&scc=1&ltmpl=default&ltmplcache=2&emr=1&osid=1#identifier"
sleep 5
input = driver.find_element(:id, "Email")
input.send_keys($var)
button = driver.find_element(:id, "next")
button.click
sleep 5

这里的问题是,在构建 .exe 之后,当我尝试通过传递不同的参数(值)来运行 exe 时,它​​总是将与“样本”相同的值传递给参数,因为它是硬代码。

C:\Users\shivaj\Downloads>testing.exe -- test1

它作为样本

请帮我解决这个问题,我刚刚制作了一个有问题的示例程序,但实际程序与它有更多关系。任何帮助表示赞赏。感谢您的帮助 !

【问题讨论】:

    标签: ruby-on-rails ruby selenium-webdriver command-line-arguments ocra


    【解决方案1】:

    我想这是因为您将参数分配给变量,并且在构建 exe 时提供了参数。

    我使用了一些使用参数的脚本,并使用 ocra 转换为 exe。

    我做的是以下

    ARGV.each do|arg|
      # do whatever with arg
    end
    

    然后,当您构建不提供参数的 exe 时,代码将运行良好,因为 ARGV 将在那里但为空。

    【讨论】:

    • 太棒了!我的方法不同,但逻辑是一样的。谢谢
    【解决方案2】:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-02-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多