Настольные приложения JavaScript?
можно ли создавать настольные приложения Windows в JavaScript?
Я знаю о программах HTA (HTML Application), но мне было интересно, есть ли более новое решение .NET, где я мог бы использовать библиотеки DLL, включенные в Visual Studio.
5 ответов
последняя версия .NET не имеет такой функции, но у вас есть варианты, чтобы сделать это:
a) WebBrowserObject в приложении WPF или Windows Forms (это будет встроенный Internet Explorer).
b) Opera Widgets, которая является браузером Opera на основе механизма презентации, который позволяет реализовать настольные приложения со стандартными веб-технологиями, и он следует стандарту W3C widgets. Эти приложения могут работать автономно, что означает, что пользователю не нужно будет открывать Opera для запуска их. Есть аналог: Opera должна быть установлена на компьютере пользователя.
есть и другие варианты, такие как Mozilla XUL, но его ограниченная поддержка разработки настольных приложений помешает вам использовать его.
Я знаю, что этот вопрос немного староват,но я думал, что отвечу за гуглеров.
можно использовать этот проект. Его в основном JavaScript interepter, который имеет доступ к .Net framework.
Так что вы могли бы сделать что-то вроде:
jish.assembly('path/to/System.Windows.Forms.dll');
var mb = jish.create('System.Windows.Forms.MessageBox');
mb.Show('Hello World');
и это работает, я не пробовал более сложные приложения 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);
Гвидо
есть несколько решений, которые позволят вам упаковать код javascript/html / css в кросс-платформенное "родное" приложение, обычно в комплекте с установщиком и механизмом обновления.
с макушки моей головы:
- Mozilla Prism, по-видимому, больше не находится в активной разработке. открытый исходный код.
- Adobe AIR, который на самом деле не должен использовать Flash, вопреки распространенному мнению. активно разрабатываемый, закрытый исходный код.
- Appcelerator Titanium Desktop, который является открытым исходным кодом и активно развивается.
вы можете использовать среду Xulrunner Mozilla для использования локального JavaScript в создаваемом приложении. Среда Mozilla может воспользоваться преимуществами компонентов XPCOM и компоненты XPCOM могут быть разработаны с использованием C++.
поэтому одним из вариантов может быть использование этой проверенной среды для создания вашего приложения с использованием JavaScript и XUL, а также использование мощности C++ и DLL в компонентах XPCOM.
примеры настольных приложений разработанные на этой платформе включают:
вы можете использовать WebKit в приложении WinForms (HTML-движок, используемый в Safari и Google Chrome).
управление .Net:http://webkitdotnet.sourceforge.net/