【问题标题】:Xamarin Studio, GTK 2.0 C# application, runtime error, can't load libglib-2.0-0.dllXamarin Studio,GTK 2.0 C# 应用程序,运行时错误,无法加载 libglib-2.0-0.dll
【发布时间】:2016-03-20 15:21:53
【问题描述】:

我在 Windows 7 上安装了全新的 Xamarin Studio 5.10 并创建了标准 GTK 2.0 C# 项目(通过 New Project > .Net > GTK#2.0 Project)。

代码如下:

using System;
using Gtk;

namespace _test
{
    class MainClass
    {
        public static void Main (string[] args)
        {
            Application.Init ();
            MainWindow win = new MainWindow ();
            win.Show ();
            Application.Run ();
        }
    }
}

构建正常,但出现运行时错误(我已将错误从我的母语翻译成英文):

无法加载 DLL“libglib-2.0-0.dll”:找不到过程(异常 来自 HRESULT:0x8007007F)

Mono 和 gtk# 似乎可以通过来自official mono site 的 exe 进行安装。测试控制台应用工作正常。

有人可以帮忙吗:)?

【问题讨论】:

  • 这个错误是来自命令行还是从 Xamarin Studio 中运行?
  • 来自工作室。 Application.Init 行以绿色突出显示,并弹出对话框“System.DllNotFoundException has been trown”...
  • 我已经完全重新安装了mono、gtk#和xamarin studio,都一样

标签: c# windows mono monodevelop xamarin-studio


【解决方案1】:

如果在安装 GTKSharp for windows 后直接发生这种情况,请重新启动 Visual Studio。

原因:安装程序添加了注册表/环境变量,有时您需要重新启动 Visual Studio 或 PC。

【讨论】:

    【解决方案2】:

    https://www.mono-project.com/download/stable/安装gtk sharp,下载链接是https://xamarin.azureedge.net/GTKforWindows/Windows/gtk-sharp-2.12.45.msi

    然后你应该将你的 gtk sharp dll 复制到你的输出路径。

    打开C:\Program Files (x86)\GtkSharp\2.12\bin 文件夹并将libglib-2.0-0.dll 文件复制到您的输出路径。

    【讨论】:

      【解决方案3】:

      我在以下设置中遇到了这个问题:

      • Windows Server 2012
      • .Net 2.12.38 的 Gtk#
      • 单声道 Windows (x64) 4.3.2
      • Xamarin Studio 5.10.1

      我用Gtk# for .Net 2.12.30 替换了Gtk# for .Net 2.12.38,这解决了我的问题。

      【讨论】:

        【解决方案4】:

        我也遇到了和讨论主题点一样的问题,但我找到了解决办法。

        您可能不会选择 .NET 运行时作为 Mono。 您可以在 Tools - Options - Projects - .NET Runtimes 中查看选择了哪些 .NET Runtimes。在那里您可以更改 .NET 运行时。

        如果您只找到 Microsoft.NET,您应该从 mono-project.com 获取最新的 Mono 并安装它。您将能够选择 Mono Runtime。

        以下帖子非常有帮助。

        How to debug in Xamarin Studio using mono runtime on Windows

        【讨论】:

          【解决方案5】:

          您需要重新启动。 我只是遇到了同样的问题,这就是解决方案。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2021-07-31
            • 1970-01-01
            • 1970-01-01
            • 2010-12-10
            • 1970-01-01
            • 2021-11-04
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多