【问题标题】:how to set system properties in C#如何在 C# 中设置系统属性
【发布时间】:2011-11-03 01:45:03
【问题描述】:

如何在 C# 中设置系统属性。

在java中我可以使用:

System.setProperty("webdriver.chrome.driver","/path/to/where/you/ve/put/chromedriver.exe");

如何在 C# 中做到这一点?

【问题讨论】:

  • 什么系统属性?这些是 Java 系统属性。
  • 我不认为有等价物

标签: c#


【解决方案1】:

我意识到这个线程真的很老了,但是如果你最终进入了这个页面,另一种解决方案是将 chromedriver.exe 添加到你的项目中,将 Build Action 设置为“Content”,并将 Copy to Output Directory 设置为“Copy如果更新”。然后你可以跳过设置环境变量。

此解决方案的缺点是您最终会得到一个 5 MB 文件的多个副本。

【讨论】:

    【解决方案2】:

    您需要使用以下选项启动 Selenium Server:Dwebdriver.chrome.driver=c:\path\to\your\chromedriver.exe

    像这样: java -jar selenium-server-standalone-2.42.0.jar -role node -hub http://localhost:4444/grid/register -Dwebdriver.chrome.driver=c:\path\to\your\chromedriver.exe

    【讨论】:

    • 嗯?问题要求 csharp,而不是 java
    【解决方案3】:

    System.Environment 将为您提供一些“属性”,但这是一个特定于 Java 的概念,在 C# 中没有任何直接等价物。

    【讨论】:

      【解决方案4】:

      C# 中没有“系统属性”的等价物。它们是特定于 Java 的概念。 (它们在 Java 中并不是真正的 系统 属性 - 它们是 JVM 范围的属性,其中一些是从系统环境变量等派生的。)

      您应该查看 WebDriver 文档以了解如何为 .NET 版本进行设置。

      编辑:澄清一下,System.Environment.SetEnvironmentVariable可以以类似的方式使用,但在我的经验中往往不是。

      【讨论】:

      • 我相信System.Environment 是一个很好的等价物。你怎么看?
      • @manojlds:嗯,它并不完全一样......而且通常不会以相同的方式使用。相当多的 Java 库使用系统属性(尽管我不喜欢它)——我不记得看到任何 .NET 库...
      【解决方案5】:

      试试System.Environment.SetEnvironmentVariable("webdriver.chrome.driver",@"/path/to/where/you/ve/put/chromedriver.exe")
      -MSDN

      【讨论】:

        【解决方案6】:

        看看 Environment 类,你可以在那里设置一些属性。

        【讨论】:

          猜你喜欢
          • 2011-07-08
          • 1970-01-01
          • 1970-01-01
          • 2011-12-11
          • 2018-01-20
          • 1970-01-01
          • 2016-07-02
          • 1970-01-01
          • 2012-01-24
          相关资源
          最近更新 更多