簡體   English   中英

使用JavaScript開發Windows應用

[英]Developing Windows apps with JavaScript

我目前需要開發Windows應用程序。 我想使事情簡單(本着uTorrent的精神),我希望結果程序是一個包含所有需要的.exe文件。

該程序很簡單。 它只需要一些UI。 它需要運行很長時間(以托盤圖標形式放置在此處)。 它需要執行一些常規任務,例如簡單的I / O。 它還需要訪問Internet,尤其是某些Web服務器。

除了這些小的要求之外,我還想用JavaScript編寫所有這些內容,因為與其他任何一種語言相比,我對它的使用都更加滿意。

我知道有些東西可以讓您運行JavaScript程序並與某些Win32 API交互,例如Windows Script Host,但是我可以使用Windows Script Host來完成所需的一切嗎? 我可以將所有Windows腳本宿主打包在一個.exe中嗎?

如果沒有,我有什么替代JavaScript的選擇?

我發現實際上.NET框架附帶了一個名為jsc.exe的JavaScript編譯器。

想要查詢更多的信息:

http://www.phpied.com/make-your-javascript-a-windows-exe/

http://msdn.microsoft.com/zh-cn/library/7435xtz6(VS.80).aspx

我猜它不是真正的JavaScript,因為它引入了額外的功能,例如import ,甚至有些class語法,這對我來說都很奇怪。 但這對我來說非常有效,因為我將像在網絡上那樣做事情。

似乎沒有人提到JSDB

JSDB提供了一個命令行環境,您可以執行任意JavaScript代碼。 您可以使用命令copy /b jsdb.exe+program.zip program.exe輕松編譯為.exe文件copy /b jsdb.exe+program.zip program.exe

重要的是要知道您必須在標准zip文件中調用主js文件main.js。 不知道名稱program.zip是否是必需的。

我實際上還沒有嘗試使用它來制作GUI應用程序-盡管它似乎支持各種API,例如ActiveX。

通過使用上面提到的copy / b命令,您可能可以從wscript.exe文件中編譯腳本-但我嘗試過並且無法使其正常運行。 讓我知道是否有人嘗試並以某種方式取得成功。

除了Windows Script Host,還有

兩者都使用標准的Web技術,HTML,JavaScript,Flash等編寫。它們也可以使用COM對象/ ActiveX控件(例如FileSystemObject,WMI,WScript甚至您自己編寫的控件)進行擴展。 Windows桌面小工具可以使用各種Win32風格的屬性和方法訪問單獨的API /命名空間。

我認為您正在尋找Adobe AIR

Adobe®AIR®2運行時使開發人員可以使用HTML,JavaScript,AdobeFlash®軟件和ActionScript®來構建可作為獨立客戶端應用程序運行的Web應用程序,而不受瀏覽器的限制。 〜AIR網站

Internet Explorer在IE 5中引入了超文本應用程序的概念。它從未取得重大突破,因此資源和文檔稀缺。

不過,由Mozilla支持的競爭對手Prism似乎還不錯,而且還很值得一看。

Prism是一個應用程序,允許用戶從瀏覽器中拆分Web應用程序,然后直接在桌面上運行它們

我認為最好的方法是Google提供的V8 JavaScript引擎

V8可以獨立運行,也可以嵌入到任何C ++應用程序中。” -我認為這非常適合您的需求,因為您可以使用JavaScript進行大多數操作,並使用提供的接口與系統進行通信。

Chromium嵌入式框架(CEF)可能會為您提供幫助。 我還不清楚如何操作,但是我確實發現許多使用此框架的應用程序。

http://code.google.com/p/chromiumembedded/

CEF的簡介如下:Chromium嵌入式框架(CEF)是Marshall Greenblatt於2008年創建的一個開源項目,旨在基於Google Chromium項目開發Web瀏覽器控件。 CEF當前支持多種編程語言和操作系統,並且可以輕松集成到新應用程序和現有應用程序中。 它是從頭開始設計的,同時兼顧了性能和易用性。 基本框架包括通過本機庫公開的C和C ++編程接口,這些本機庫將宿主應用程序與Chromium和WebKit實現細節隔離開來。 它提供了瀏覽器控件和主機應用程序之間的緊密集成,包括對自定義插件,協議,JavaScript對象和JavaScript擴展的支持。 主機應用程序可以選擇控制資源加載,導航,上下文菜單,打印等,同時利用Google Chrome Web瀏覽器中可用的相同性能和HTML5技術。

許多個人和組織為支持CEF的發展貢獻了時間和資源,但始終歡迎社區的更多參與。 這包括對核心CEF項目和將CEF與其他編程語言和框架集成在一起的外部項目的支持(請參閱下面的“外部項目”部分)。

我不是100%,但是我相信WSH使用JScript或WScript,而不是JavaScript。

使我發瘋,但從Javascript到Java或C#只是一小步。 我建議使用C#,因為在Windows計算機上,這些庫已經存在。 您只需復制粘貼您的.exe文件即可。

如果只需要一個.EXE,那么如果需要這些運行時,您可以做什么?

如果可以要求預先安裝.NET運行時,那么可以在JScript.NET中完成所有工作。

為什么不在Rhino上使用Rhino -JavaScript? 您甚至可以將腳本編譯為.class文件,並將它們與Rhino一起打包到JAR中,以便於分發。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM