我有一个应用程序使用 Mono 框架 2.10.2 和 c# 并且工作正常。现在我正在尝试为 Windows 64 位构建它。
我为 64 位编译了所有项目和单声道,链接并复制了必要的二进制文件和库。我的应用程序能够使用 64 位单声道文件成功编译、链接和启动。
但是当我尝试做一些文件操作时,例如打开一个文件,它给出了一个拒绝访问的错误。相同的代码和相同的文件在 32 位版本中运行良好。或者当我调用我的一些调试函数(例如打开消息框)时,它就像我没有调用该函数一样工作。
我使用 Directory.GetWorkingDirectory 调用检查了当前工作目录。它返回一个垃圾值。我认为这就是它无法找到或访问该文件的原因。此外,我正在尝试将工作目录的值设置为 E:\Develop 之类的东西,但这次它说找不到路径。
Getworkingdirectory 函数默认在微软的 mscorlib.dll 中实现,但 Mono 框架似乎使用其定制的 mscorlib.dll。我必须找到这个 dll 的 64 位版本还是我错过了其他东西?我正在使用包含视觉工作室解决方案的 mono 的 msvc 文件夹构建单声道。