在Windows 10上运行GTK#应用程序

时间:2016-10-07 21:11:20

标签: windows mono gtk#

我在Linux上用Mono构建了一个C#和GTK#程序,现在我试图在Windows 10上运行它。为了看看我是否可以运行任何东西,我试过MonoDevelop文档中的HelloGTK示例:http://www.monodevelop.com/documentation/stetic-gui-designer/

在Windows 10计算机上,我首先尝试安装Mono(32位),并从Mono命令提示符运行应用程序作为单声道HelloGTK.exe,但它立即终止,没有任何错误消息。然后我尝试卸载Mono并安装Gtk#,但结果相同:当从Windows命令提示符运行时,应用程序将以静默方式终止。

  1. 可能是.NET版本不匹配,还是缺少.NET组件?在控制面板中启用了.NET(版本3.5和4.6),但并未检查所有子项。该程序是针对.NET 4.5版构建的。 我构建了一个控制台应用程序(在Linux上使用Mono),它在没有安装Mono的Windows机器上运行。这足以验证.NET状态还是它仍然是一个问题?

  2. 应用程序是否找不到GTK#库?有没有办法验证GTK#安装?

  3. 这可能是GTK#版本不匹配吗?该应用程序是针对GTK#2.12构建的,我在Windows机器上安装了2.12.38,所以我觉得这不太可能。

  4. 非常感谢有关如何解决此问题的任何提示!

2 个答案:

答案 0 :(得分:0)

忘了这一切:

本机泊坞窗现在可在Windows上使用,所以:

  1. 停泊您的应用并制作图片
  2. 复制到Windows框
  3. 在docker中运行
  4. 完成
  5. 加上可能需要填写的一些细节。但是对于跨平台问题,docker可以使你的生活更加轻松。

答案 1 :(得分:0)

问题最终出现在由MonoDevelop中包含的Stetic GUI设计器生成的代码中:

protected virtual void Build ()
{
    ...
    this.Title = global::Mono.Unix.Catalog.GetString ("MainWindow");

上面一行注释掉了应用程序在安装了GTK#的Windows 10上运行。