如何在Linux下使用Mono运行C#Visual Studio应用程序?

麦可

我已经用Visual Studio 2013编写了一个C#.NET 4.5 WinForms应用程序。现在,我想在我的Linux机器(薄荷17.1)上运行带有Mono的该应用程序。

我已经完成了以下步骤:

  • 在Windows下使用Mono Migration Analyzer分析了我的.exe
    • Moma的所有测试都通过了(我必须调整RTL属性)
  • 已安装mono-complete(apt-get安装mono-complete,当前版本为3.2.8)
  • 用xbuild编译(无选项)我的csproj文件(0错误1警告:/usr/lib/mono/4.5/Microsoft.Common.targets:警告:引用'System.Deployment'未解析)
  • 尝试从我的控制台使用./app.exe启动应用程序

该应用程序无法启动,但是我看到了一个异常,它没有给我任何有关可能出问题的提示。这是例外:

Unhandled Exception:
System.ArgumentException: dataMember
  at System.Windows.Forms.ListBindingHelper.GetList (System.Object dataSource, System.String dataMember) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.BindingSource.ResetList () [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.BindingSource.set_DataMember (System.String value) [0x00000] in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) System.Windows.Forms.BindingSource:set_DataMember (string)
  at mda.vaulty.main.Database.VaultManagment.InitializeBindingSources () [0x00000] in <filename unknown>:0 
  at mda.vaulty.main.Database.VaultManagment..ctor () [0x00000] in <filename unknown>:0 
  at mda.vaulty.main.MainForm..ctor () [0x00000] in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) mda.vaulty.main.MainForm:.ctor ()
  at mda.vaulty.main.Program.Main () [0x00000] in <filename unknown>:0 
[ERROR] FATAL UNHANDLED EXCEPTION: System.ArgumentException: dataMember
  at System.Windows.Forms.ListBindingHelper.GetList (System.Object dataSource, System.String dataMember) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.BindingSource.ResetList () [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.BindingSource.set_DataMember (System.String value) [0x00000] in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) System.Windows.Forms.BindingSource:set_DataMember (string)
  at mda.vaulty.main.Database.VaultManagment.InitializeBindingSources () [0x00000] in <filename unknown>:0 
  at mda.vaulty.main.Database.VaultManagment..ctor () [0x00000] in <filename unknown>:0 
  at mda.vaulty.main.MainForm..ctor () [0x00000] in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) mda.vaulty.main.MainForm:.ctor ()
  at mda.vaulty.main.Program.Main () [0x00000] in <filename unknown>:0 

该项目是一个.NET 4.5项目,据我所知,它与Mono完全兼容。我正在使用强类型的DataSet,具有DataBindings的DataGrid和用户特定的应用程序设置。这些组件之一可能引起问题吗?app.config由xbuild进程创建,它包含预期的内容(具有默认值的应用程序设置)。

xbuild编译器还创建了一个mdb文件。但是这个文件对我来说是未知的,因为VS2013不会创建这样的文件。

您是否知道为什么应用程序无法启动?

谢谢,

问候,

麦可

寿司宿醉

at (wrapper remoting-invoke-with-check) System.Windows.Forms.BindingSource:set_DataMember (string) at mda.vaulty.main.Database.VaultManagment.InitializeBindingSources () [0x00000] in <filename unknown>:0 at mda.vaulty.main.Database.VaultManagment..ctor () [0x00000] in <filename unknown>:0 at mda.vaulty.main.MainForm..ctor () [0x00000] in <filename unknown>:0

似乎您没有在Linux / Mint框中定义数据库/数据源,因此没有文件名异常。开箱即用,Mono提供了SQLite安装,仅此而已。一次有(多个)ODBC提供程序可用于各种Linux(请与您的DB提供程序联系)。

这个Moma当然不会被检查。

另外,我建议在Windows框的Mono下运行它。安装Windows版本的mono,然后尝试运行您的应用程序。

顺便说一句:mdb文件是用于调试版本的pdb文件的mono版本。它们包含额外的信息(用于软调试器(即gdb)的源文件,符号等的完全限定路径。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

符合DEP的Visual Studio应用程序

来自分类Dev

在Visual Studio中使用Windows窗体应用程序

来自分类Dev

Visual Studio WIX应用程序部署

来自分类Dev

如何在没有Visual Studio的情况下构建Windows Store 8.1应用程序?

来自分类Dev

使用Visual Studio多线程应用程序进行调试

来自分类Dev

Visual Studio 2013在制作Windows Phone应用程序时仅显示Silverlight应用程序

来自分类Dev

如何在Android Studio中终止应用程序-在单独的设备上运行的应用程序

来自分类Dev

如何从android studio在moto 360上运行应用程序

来自分类Dev

如何在不使用Visual Studio的情况下创建AF#Windows应用程序(无cmd窗口)

来自分类Dev

使用IIS部署Visual Studio Web应用程序

来自分类Dev

如何从Visual Studio运行Windows Phone应用程序?

来自分类Dev

如何使用Android Studio登录应用程序?

来自分类Dev

使用Visual Studio通过Cordova开发混合应用程序

来自分类Dev

从MainWindow文本框到辅助窗口的c#visual studio WPF应用程序输出

来自分类Dev

使用Visual Studio的1MB应用程序

来自分类Dev

使用Android Studio构建的应用程序Apk大于使用Eclipse构建的应用程序Apk

来自分类Dev

如何从Visual Studio开发Android应用程序或Iphone应用程序?

来自分类Dev

Android Studio未运行应用程序

来自分类Dev

在Visual Studio中运行Cordova应用程序时出错

来自分类Dev

WindowsForm应用程序在Visual Studio中生成控制台应用程序

来自分类Dev

在Visual Studio 2013中执行Windows Phone应用程序到软件应用程序?

来自分类Dev

WinForms应用程序无法在Visual Studio外部运行

来自分类Dev

如何使用android studio测试android应用程序?

来自分类Dev

如何通过Microsoft Visual Studio启动应用程序?

来自分类Dev

如何在运行时使用Visual Studio调试Pygame应用程序

来自分类Dev

如何在android studio中删除应用程序的名称

来自分类Dev

使用 Visual Studio 创建 Windows 8.1 商店应用程序

来自分类Dev

如何在android studio中以编程方式在最近的应用程序中锁定应用程序

来自分类Dev

使用 Android Studio 运行应用程序时出错

Related 相关文章

  1. 1

    符合DEP的Visual Studio应用程序

  2. 2

    在Visual Studio中使用Windows窗体应用程序

  3. 3

    Visual Studio WIX应用程序部署

  4. 4

    如何在没有Visual Studio的情况下构建Windows Store 8.1应用程序?

  5. 5

    使用Visual Studio多线程应用程序进行调试

  6. 6

    Visual Studio 2013在制作Windows Phone应用程序时仅显示Silverlight应用程序

  7. 7

    如何在Android Studio中终止应用程序-在单独的设备上运行的应用程序

  8. 8

    如何从android studio在moto 360上运行应用程序

  9. 9

    如何在不使用Visual Studio的情况下创建AF#Windows应用程序(无cmd窗口)

  10. 10

    使用IIS部署Visual Studio Web应用程序

  11. 11

    如何从Visual Studio运行Windows Phone应用程序?

  12. 12

    如何使用Android Studio登录应用程序?

  13. 13

    使用Visual Studio通过Cordova开发混合应用程序

  14. 14

    从MainWindow文本框到辅助窗口的c#visual studio WPF应用程序输出

  15. 15

    使用Visual Studio的1MB应用程序

  16. 16

    使用Android Studio构建的应用程序Apk大于使用Eclipse构建的应用程序Apk

  17. 17

    如何从Visual Studio开发Android应用程序或Iphone应用程序?

  18. 18

    Android Studio未运行应用程序

  19. 19

    在Visual Studio中运行Cordova应用程序时出错

  20. 20

    WindowsForm应用程序在Visual Studio中生成控制台应用程序

  21. 21

    在Visual Studio 2013中执行Windows Phone应用程序到软件应用程序?

  22. 22

    WinForms应用程序无法在Visual Studio外部运行

  23. 23

    如何使用android studio测试android应用程序?

  24. 24

    如何通过Microsoft Visual Studio启动应用程序?

  25. 25

    如何在运行时使用Visual Studio调试Pygame应用程序

  26. 26

    如何在android studio中删除应用程序的名称

  27. 27

    使用 Visual Studio 创建 Windows 8.1 商店应用程序

  28. 28

    如何在android studio中以编程方式在最近的应用程序中锁定应用程序

  29. 29

    使用 Android Studio 运行应用程序时出错

热门标签

归档