致訪客
此處多為站主的學習隨筆,
以及生活中的一些點滴。
內容隨興,不嚴謹,甚至有些奇怪的喃喃。
如果有那麼一點東西,
能幫助到您,或是能引起您的共鳴,那都是本站榮幸。
如果您能留下建議或迴響那更是再好不過了。
期待與各位心靈、思維交會的瞬間。

最近重構 Minesweeper Solver,卻因為 win10 update,造成之前的遊戲版本無法運行,只好自幹遊戲。

但是自己寫的 GUI 感覺很麻煩,於是就找到 minesweeper online 的 js code,但又不想用瀏覽器玩。
(因為螢幕分析會因為瀏覽器不同而不好做)

我必須把這東西轉成有自己視窗的 exe。

js 怎轉 exe ? 有這麼神奇的東西嗎 ? 我在想 node js 都出來了 ( js 能活在後端 ),

js 的 GUI 應該也不遙遠了。

果不其然,在幾年前就有 node webkit 這咚咚。


(GitHub 上最早的 Release tag Ver)

on 15 Mar 2012 

 

 

還蠻容易的,第一次用就上手。

將 index.html 放進去,再加個 package.json 就可以運行。

但我想要的是獨立於 node js 和 node webkit 的獨立 exe 檔。

依照 node webkit 官方的說法,可以用工具或 DIY。

當然要先 DIY 看看啦。

先 zip 成 .nw 檔,然後將 nw.exe 在 cmd 下 copy 到 .nw 後面。

copy /b nw.exe+app.nw app.exe

恩,本機 (laptop) 可以 run,試試看移植。

desktop 說他不能 Run ...

那來試試看工具吧。

nodebob 看起來最簡單,因為是 bat 和 shell script 寫的。

然後就掉坑了。

C:\Users\dici8\Desktop\nodebob>build.bat
nodebob v0.1
---


Creating app package
7-Zip 9.20  Copyright (c) 1999-2010 Igor Pavlov  2010-11-18


Error:
7-Zip cannot find the code that works with archives.

Creating executable
複製了         1 個檔案。
C:\Users\dici8\Desktop\nodebob\release\nw.exe
複製了         1 個檔案。

Copying files

Deleting temporary files
找不到 C:\Users\dici8\Desktop\nodebob\release\app.nw

Done

 

恩 ... 看起來 7z 有點問題,結果發現是他 buildTools 裡的 7z 不能 Run ...

(就算加了 x 權限也不能用)

那就 載個 7z 來用吧。

我載的是 .exe 64-bit x64    7-Zip for 64-bit Windows x64 (Intel 64 or AMD64)

恩,沒毛病。

然後是將 7z 加到環境變數。
搜 檢視進階系統工具 -> 環境變數 -> 挑 Path 點 新增 -> 挑 7z 資料夾
(我的是在 "C:\Program Files\7-Zip")

cmd 測一下 7z 。

將 nodebob\buildTools 的 7z 資料夾重命名(名字不要是7z就好),然後創一個空的 7z 資料夾。

目的是為了讓 7z 指令直接用到環境變數的 7z 程式。

C:\Users\dici8\Desktop\nodebob>build.bat
nodebob v0.1
---


Creating app package
7-Zip 17.00 beta (x64) : Copyright (c) 1999-2017 Igor Pavlov : 2017-04-29

Scanning the drive:
1 folder, 9 files, 1606807 bytes (1570 KiB)

Creating archive: C:\Users\dici8\Desktop\nodebob\release\app.nw

Add new data to archive: 1 folder, 9 files, 1606807 bytes (1570 KiB)


Files read from disk: 9
Archive size: 670780 bytes (656 KiB)
Everything is Ok

Creating executable
複製了         1 個檔案。
C:\Users\dici8\Desktop\nodebob\release\nw.exe
C:\Users\dici8\Desktop\nodebob\release\app.nw
複製了         1 個檔案。

Copying files

Deleting temporary files

Done
創作者介紹
創作者 nobodyzxc 的頭像
nobodyzxc

Nobody's Zero

nobodyzxc 發表在 痞客邦 留言(1) 人氣()


留言列表 (1)

發表留言
  • nobodyzxc
  • 原來是我沒有將 7z.dll 加上 x 權限 orz
    都要加才可以 Run...

    所以我懷疑 DIY 不行也是這問題。

    chmod a+x *

您尚未登入,將以訪客身份留言。亦可以上方服務帳號登入留言

請輸入暱稱 ( 最多顯示 6 個中文字元 )

請輸入標題 ( 最多顯示 9 個中文字元 )

請輸入內容 ( 最多 140 個中文字元 )

請輸入左方認證碼:

看不懂,換張圖

請輸入驗證碼