在浏览器中运行C#app作为插件

时间:2010-02-08 19:14:23

标签: browser plugins 2d

我有一个用C#编写的小型2D游戏引擎,使用DirectX。有可能以某种方式在浏览器中作为插件运行它吗?例如Flash和其他人,你去一个有游戏的网站,它会要求你安装一个特定的插件,然后你可以在浏览器中玩鼠标和键盘输入游戏。 我搜索了几个小时,我仍然不知道我在找什么。到目前为止,我主要关注Internet Explorer,但有插件,插件,扩展等,我不知道我真正需要什么。

4 个答案:

答案 0 :(得分:3)

是的,我认为这是可能的。

例如,我有一个HTML页面,其中包含如下元素:

<object id="simpleControl1"
classid="http:RenderTextProject5.dll#RenderTextProject.ScrollableControl"
height="300"
width="300">
</object>

'classid'属性值具有以下含义/语法:

  • RenderTextProject5.dll是已编译的.NET程序集的文件名
  • RenderTextProject.ScrollableControl是类的限定名(namespace和classname),它是System.Windows.Forms.Control的子类

然后我可以看到控件在浏览器中呈现。

我正在使用IE浏览器(IE8,但它过去也使用IE6),我的机器上安装了.NET框架(但我想我不需要在客户机上安装RenderTextProject5程序集)

也可能存在其他一些警告(例如,我需要在Intranet安全区域中运行)。

请参阅Return of the Rich Client: Code Access Security and Distribution Features in .NET Enhance Client-Side Apps

答案 1 :(得分:2)

寻找Silverlight ..这可能不是你需要的,但它是一个能够运行C#代码的浏览器插件;)

答案 2 :(得分:0)

有一个名为Unity的相对较新的插件。它有点复杂,因为它本身就是一个开发/ 3D创作环境,但就我所知,它使用C#作为它的语言。但是我不知道纯2D编程是否可行(好吧,可以使用ortho 3d来解决?)。

最近可以免费下载基本版,也许值得一试。

答案 3 :(得分:0)

可以在不使用插件的情况下在Web浏览器中运行C#应用程序。例如,可以使用JSIL将C#应用程序编译为JavaScript应用程序。