如何将 C# WinForm 应用程序和安装程序移植到 MacOS?

罗兹贝

我有一个winform.net framework 4.5. 现在我需要找到一种方法将其转换为 Mac Os 应用程序。我不想使用 Crossover 或 Mono。事实上,我需要找到一种方法来为 Mac OS 制作安装程序。

我有VS2017 PC和VS的MacXCode的Mac上

我以为我曾经在 Visual Studio 中看到过一个选项(比如导出到 XCODE 或类似的东西),它会创建一个XCode项目并将其放在一个名为__MACOSX的文件夹中

任何人都可以概述将我的 WinForms 应用程序移植到 MacOS 并为其创建安装程序的正确工具或步骤吗?

卡洛斯·丘里奥

您的目标是 .net framework 4.5,该框架仅在 windows 上运行,除非您在其上安装 windows,否则无法将您的应用程序部署到 mac。如果您希望 Windows 窗体应用程序在 mac 上运行,您可以针对不同的框架(我知道您不想这样做,但这是唯一的方法)。你可以针对.NET Core 3.0,虽然它仍然是预览版,它的正式版本将于今年9月发布,它将支持winforms。

您可以尝试针对最后一个预览版本并尝试重新编译所有内容,以便制作可在 Mac 上运行的可执行文件。

为了面向 .NET Core Framework 首先,您必须下载最新的.NET Core SDK 3.0预览版并安装它。然后通过dotnet --info在控制台中运行命令来检查它是否已正确安装,它应该显示如下内容:

已安装的 .NET Core SDK:

3.0.100-preview4-011223 [C:\Program Files\dotnet\sdk]

安装的 .NET Core 运行时:

Microsoft.AspNetCore.App 3.0.0-preview4-19216-03 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]

Microsoft.NETCore.App 3.0.0-preview4-27615-11 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]

Microsoft.WindowsDesktop.App 3.0.0-preview4-27613-28 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

您还必须拥有Visual Studio 2019的最新预览版

然后您应该使用 Visual Studio 启用预览开发,为此您应该转到工具 → 选项 → 项目和解决方案 → .NET Core 并检查使用 .NET Core SDK 的预览版本尽管我相信在 VS2019 预览版本中它已启用默认

面向 .Net Core 和 .Net Framework 的 windows 窗体项目之间的项目结构实际上非常不同,因此最好从头开始一个新的解决方案。使用 Visual Studio 2019 的模板创建一个面向 .NET Core 的新 Windows 窗体项目。然后,您必须从以 .NET Framework 为目标的旧项目中获取所有文件到新项目,如果您有许多项目,您将重复该过程,但将新项目添加到同一解决方案中,然后进行连接这些项目之间的引用以进行编译。如果您有类库项目,最好的选择是将它们定位到 .net 标准类库而不是 .net 核心类库。

如果你使用 Nuget 包,请确保下载它们的 .NET Core 版本。

注意:由于 .NET Core 中的 winforms 仍然是预览版本,因此可能不是您在之前的项目工作中使用的所有功能。(另请注意,您使用的是全新的框架,因此 .NET Core 中的某些内容可能已更改或缺少其他内容)。

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用 Mono Compiler 将 c# winform 应用程序移植到 RaspberryPi 时出错

来自分类Dev

使用NDK将C ++应用程序移植到Android

来自分类Dev

将 C++14 Linux 应用程序移植到 Solaris 10 和 11

来自分类Dev

如何绘制叠加窗口Winform应用程序C#

来自分类Dev

如何使 C# winform 程序完全可移植?

来自分类Dev

如何将Winform应用程序更改为WPF应用程序?

来自分类Dev

在Linux下用C打开和写入BMP文件,或将现有Windows应用程序移植到Linux [关闭]

来自分类Dev

C#Devexpress如何将多个值从WinForm 1传递到WinForm 2?(执行“新建”,“编辑”,“查看”等)

来自分类Dev

如何将SpringMVC应用程序移植到SpringREST?

来自分类Dev

如何将Web服务文本引入Winform应用程序

来自分类Dev

如何将Web服务文本引入Winform应用程序

来自分类Dev

VS 2013 Winform应用程序:如何将通用对象转换为按钮类型

来自分类Dev

如何创建WinForm应用程序(C#)中已经存在的面板列表

来自分类Dev

如何将文件提供程序添加到MacOS Swift应用程序?

来自分类Dev

如何使用 Winform C# 应用程序通过 USB 电缆将数据传输到 Hololens 设备?

来自分类Dev

将应用程序移植到android

来自分类Dev

将应用程序移植到android

来自分类Dev

如何将安装程序作为依赖项添加到C#应用程序的安装项目中?

来自分类Dev

如何将Windows .exe转换为macOS可执行文件/应用程序?

来自分类Dev

如果我具有应用程序的源代码以及macOS和Windows安装程序,那么如何找到用于构建该应用程序的Node.js版本?

来自分类Dev

如何将C ++应用程序集成到PHP网站中?

来自分类Dev

如何将Objective-C文件添加/导入到快速应用程序

来自分类Dev

如何将值从 Windows 应用程序表单 c# 传递到 html 页面

来自分类Dev

如何将图像 blob 从 MySQL 检索到 C# 应用程序中?

来自分类Dev

如何从Windows for Linux移植C#应用程序?

来自分类Dev

无法为C#WinForm应用程序创建安装文件

来自分类Dev

如何将使用Sharp库的macOS的Serverless Framework应用程序部署到AWS?

来自分类Dev

如何将DirectShow应用程序(C ++)的输出转发到C#应用程序?

来自分类Dev

通过C#winform应用程序执行CMD命令?

Related 相关文章

  1. 1

    使用 Mono Compiler 将 c# winform 应用程序移植到 RaspberryPi 时出错

  2. 2

    使用NDK将C ++应用程序移植到Android

  3. 3

    将 C++14 Linux 应用程序移植到 Solaris 10 和 11

  4. 4

    如何绘制叠加窗口Winform应用程序C#

  5. 5

    如何使 C# winform 程序完全可移植?

  6. 6

    如何将Winform应用程序更改为WPF应用程序?

  7. 7

    在Linux下用C打开和写入BMP文件,或将现有Windows应用程序移植到Linux [关闭]

  8. 8

    C#Devexpress如何将多个值从WinForm 1传递到WinForm 2?(执行“新建”,“编辑”,“查看”等)

  9. 9

    如何将SpringMVC应用程序移植到SpringREST?

  10. 10

    如何将Web服务文本引入Winform应用程序

  11. 11

    如何将Web服务文本引入Winform应用程序

  12. 12

    VS 2013 Winform应用程序:如何将通用对象转换为按钮类型

  13. 13

    如何创建WinForm应用程序(C#)中已经存在的面板列表

  14. 14

    如何将文件提供程序添加到MacOS Swift应用程序?

  15. 15

    如何使用 Winform C# 应用程序通过 USB 电缆将数据传输到 Hololens 设备?

  16. 16

    将应用程序移植到android

  17. 17

    将应用程序移植到android

  18. 18

    如何将安装程序作为依赖项添加到C#应用程序的安装项目中?

  19. 19

    如何将Windows .exe转换为macOS可执行文件/应用程序?

  20. 20

    如果我具有应用程序的源代码以及macOS和Windows安装程序,那么如何找到用于构建该应用程序的Node.js版本?

  21. 21

    如何将C ++应用程序集成到PHP网站中?

  22. 22

    如何将Objective-C文件添加/导入到快速应用程序

  23. 23

    如何将值从 Windows 应用程序表单 c# 传递到 html 页面

  24. 24

    如何将图像 blob 从 MySQL 检索到 C# 应用程序中?

  25. 25

    如何从Windows for Linux移植C#应用程序?

  26. 26

    无法为C#WinForm应用程序创建安装文件

  27. 27

    如何将使用Sharp库的macOS的Serverless Framework应用程序部署到AWS?

  28. 28

    如何将DirectShow应用程序(C ++)的输出转发到C#应用程序?

  29. 29

    通过C#winform应用程序执行CMD命令?

热门标签

归档