如何将C#GUI放入网站?我需要做什么

本文关键字:什么 网站 C#GUI | 更新日期: 2023-09-27 18:19:34

主程序用C++编写,并打包到.dll文件中。一个C#编写的GUI获取.dll文件并运行和显示,这样人们就可以看到发生了什么

我不需要知道这个程序是如何工作的(这是一个国际象棋游戏)。我只需要以某种方式将GUI放入网页中,这样人们就可以查看GUI并从网页中播放。

现在我有一堆文件,包括C++代码和.dlls,以及带有.exe文件的C#GUI。

我是网络世界的新手。。。请帮帮我。我不知道该怎么办…

-Franklin

如何将C#GUI放入网站?我需要做什么

查看Silverlight

另一种方法是使用ASP.NET 实现gui

无论如何,我建议您在决定哪种技术最适合您的用例之前,先了解一下web技术。

gui在c++内部,这就是你的意思吗?如果是这样的话,就我所知,没有办法在网上表达除非您包装您的c++dll,否则通过包装dll中的方法在web和界面中构建ui

我建议使用ASP.NET MVC4来构建响应式web应用程序。在服务器端,您可以引用dll,也可以使用部分GUI代码,并将其更改为控制器代码,以将GUI输出到web浏览器。

为了快速开发,您可以使用Silverlight,但我个人建议多花一点时间,使用int HTML5

  • Silverlight有利于在web上快速开发C#UI,但客户端必须安装插件才能运行它(如Adobe Flash),因此,并非所有平台都支持它。

  • HTML5无处不在。Int只是更丰富的HTML,具有更多的内置功能和特性,得到了广泛的浏览器和系统生产公司的支持。因此,在我看来,它比Silverlight更可靠、更可扩展。但效率较低的是一条学习曲线。

在这两种情况下,您都需要定义一个接口,通过提供(I innagine)或棋盘的当前状态,或玩家做出的移动,来"询问"国际象棋库下一步的动作。通过获得响应,将其呈现在客户端。因此,网络传输将只发送"MOVE DONE"或"BOARD STATE"到服务器,并从服务器获得"NEXT MOVE"信息。

希望这能有所帮助。

事实上,Silverlight是Web上最接近C#GUI的解决方案。由于它也是在.NET上构建的,所以有些方法对您来说已经很熟悉了。我假设您的GUI是在WindowsForms中构建的,所以您仍然需要为Web重新构建GUI。尽管在这个问题中,有一个描述了转换器的答案,你可以尝试:我可以将基于windows窗体的桌面应用程序转换为silverlight吗?

但是,我建议在HTML或Silverlight中完全重建GUI。这对未来的发展更有意义我还建议为C++DLL包装器构建一个REST API,您几乎可以从任何GUI调用它,即使是已经构建的C#