JavaScript桌面应用程序?

pos*_*n12 6 .net javascript desktop-application

是否可以用JavaScript创建Windows桌面应用程序?

我知道HTA(HTML应用程序)程序,但想知道是否有更新的.NET解决方案,我可以使用Visual Studio附带的DLL库.

Mat*_*zer 5

最新的.NET版本没有这样的功能,但你可以选择这样做:

a)WPF或Windows窗体应用程序中的WebBrowserObject(它将是嵌入式Internet Explorer).

b)Opera Widgets,它是一个基于Opera浏览器的表示引擎,它允许您使用标准Web技术实现桌面应用程序,并遵循W3C小部件标准.这些应用程序可以独立运行,这意味着用户无需打开Opera即可运行它们.有一个对应物:Opera必须安装在用户的机器上.

还有其他选项,如Mozilla XUL,但它对桌面应用程序开发的有限支持会阻止您使用它.


gat*_*pia 5

我知道这个问题有点老了,但我想我会回答那里的googlers.

你可以使用这个项目.它基本上是一个javascript互联网,可以访问.Net框架.

所以你可以这样做:

jish.assembly('path/to/System.Windows.Forms.dll');

var mb = jish.create('System.Windows.Forms.MessageBox');
mb.Show('Hello World');
Run Code Online (Sandbox Code Playgroud)

它有效,但我没有尝试过更复杂的winforms应用程序,所以不能说它最终是否会倒下.

如果有人尝试,请告诉我.

编辑1:我用一个稍微复杂的例子尝试了它,它也有效.试试这个:

jish.assembly('path/to/System.Drawing.dll')
jish.assembly('path/to/System.Windows.Forms.dll')

var app = jish.create('System.Windows.Forms.Application');
var form = jish.create('System.Windows.Forms.Form');
var lbl = jish.create('System.Windows.Forms.Label');
form.Text = lbl.Text = 'Hello World!';
lbl.Location = jish.create('System.Drawing.Point', 50, 50);
form.Controls.Add(lbl);

app.Run(form);
Run Code Online (Sandbox Code Playgroud)

圭多