【问题标题】:How do i launch a url in monodevelop c#?如何在 monodevelop c# 中启动 url?
【发布时间】:2009-08-28 21:31:53
【问题描述】:

我正在尝试在 gnome 库中找到一些东西来做到这一点:

Gnome.GnomeOpen(url_string);

gnome 将使用首选 gnome 应用程序打开 URL

这存在吗?

【问题讨论】:

  • 我也刚刚发现了 Gnome.Url.Show(link);

标签: c# mono gtk#


【解决方案1】:

Process.Start 应该会为您处理所有杂乱的工作:

Process.Start ("http://www.mono-project.com");

【讨论】:

  • Process 在什么命名空间中?据我所知,没有System.Process
【解决方案2】:

未经测试:

System.Diagnostics.Process proc = new System.Diagnostics.Process();
proc.EnableRaisingEvents=false; 
proc.StartInfo.FileName = "xdg-open"; //best guess
proc.StartInfo.Arguments = string_url;
proc.Start();
proc.WaitForExit();

我没有 linux 在这里工作来测试这个,但是你应该能够通过将命令更改为它需要的,使用上面的作为模板来完成你想要的。

【讨论】:

  • 这将适用于最近的 Linux,但它不是可移植的。但是,正如 jpobst 所说,Process.Start 可以直接打开 HTTP URL(和大多数文件),使用 Mac/Windows/Linux 上的适当处理程序 - 在 Linux 的情况下确实是 xdg-open。您可以通过设置 proc.StartInfo.UseShellExecute = false 来禁用此行为。
  • 在 2020 年,即使在 Windows Linux 子系统 2 中,此解决方案也能很好地工作,其中接受的答案会导致应用程序在以下情况下崩溃: - Windows 10 20H2 中的 WLS 2 - Debian 10 - 最新的 Monodevelop - VcxSrv安装以显示来自 WLS2 的 GUI 应用程序
猜你喜欢
  • 2014-11-05
  • 2010-12-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多