我們可以通過Windows 8新增的市集在本機安裝各種應用,不過Windows 8應用的安裝是有限制的,只能在市集下載線上安裝。有沒有辦法,可以像傳統的Windows軟體一樣,從任意地方下載擷取,然後在本機離線安裝?
【解題思路】
這個挑戰有點高難度。
在Windows 8市集中下載、安裝應用雖然方便,但有時也很麻煩,比如許多人遇到過市集進不去的問題,或者下載速度慢,並且下載時也不能切換到別的應用(因為一旦市集處在後台,下載就會被掛起)。因此我們可以自己封裝應用,然後離線安裝。這樣既方便在其他電腦上安裝,也便於和好友共用APP。離線應用需要Windows 8受信任的認證才能安裝,這需要藉助一些工具來突破認證的限制。
【解題方法】
安裝許可證突破限制
由於離線應用需要Windows 8受信任的認證才能安裝,因此我們首先要在本機安裝認證。對於新手來說,通過安裝Windows 8開發人員許可證即可獲得認證。
首先從http://www.dwz.cn/cfan201312下載Win8 Metro Developer(注意:程式運行需要NET Framework 3.5的支援,運行會自動提示下載安裝然後重啟)。啟動程式後點擊“註冊開發人員許可證”,按提示輸入自己的微軟帳號申請即可。
因為許可證包含受Windows 8信任的根憑證,完成許可證的安裝後,就相當於APP開發人員了,所以有許可權在本機安裝APPX應用,以後就可以直接安裝離線應用了。
自己封裝離線APP
Windows 8開發人員許可證目前是免費的,但是它的認證只有3個月的有效期間,而且很快就會進入收費階段。因此對於系統高手,我們可以手動解除Windows 8應用線上安裝限制。所需工具到http://dwz/cfan2019下載,下載後將其全部解壓到H盤備用。
Windows 8應用預設全部安裝在C:Program Fileswindowsapps,目前使用者預設無法直接存取,我們需要先將檔案夾查看方式設定為“顯示所有檔案”和“受系統保護檔案”,然後右擊該目錄選擇“屬性→安全→進階→更改所有者”,將目前的目錄所有者設定為目前使用者。接著返回屬性設定視窗,單擊“添加”,將目前使用者添加到組和使用者列表,並將其使用權限設定為“完全控制”,這樣即可開啟上述目錄。
完成上述操作後,在資源管理員中開啟C:Program Fileswindowsapps,其中的每個目錄就對應一個已安裝的應用。
現在我們就可以將這裡安裝的應用提取出來重新封裝為離線APP。比如上班的時候,我們可以利用公司高速網路在市集下載安裝應用,然後用下面的方法重新封裝,這樣就可以拿回家裡電腦安裝或與朋友共用了。
這裡以從市集下載遊戲為例,首先在公司電腦上通過市集安裝好遊戲。開啟C:Program Fileswindowsapps目錄,提取其中遊戲目錄到H盤並將其命名為youxi,接著開啟H:youxi,刪除該檔案夾中的microsoft.system.package.metadata目錄,這個是系統內建驗證檔案。
接著返回案頭,按Win+X,選擇“命令提示(管理員)”,以管理員身份啟動命令提示字元後,輸入下列的命令重新封裝該遊戲:
H:MakeAppx.exe pack /d h:youxi /p my.appx
完成應用的封裝後,在h:youyxi下就會增加一個名為my.appx的應用程式套件,這就是我們製作好的離線安裝包,接下來我們就要對這個包進行簽名。
離線應用的安裝
因為Windows 8在開始菜單的Modern環境中每個App都必須由受信任的認證簽名,這樣Windows 8才允許將其安裝到電腦上。因此需要先安裝認證,雙擊下載到的認證進行安裝,然後在開啟的嚮導選擇“本機電腦”。
剩下的操作按照工具提示依次點擊“下一步→是→確認匯入認證為H:認證.pfx→下一步→輸入私密金鑰的密碼(預設為pcbeta)→下一步→將所有認證放在下列儲存→瀏覽→選擇“可信任的根憑證授權單位”,最後點擊完成認證的安裝。
完成認證的安裝後,開啟IE,點擊“工具→internet選項→內容→認證→可信任的根憑證授權單位”,確保其中安裝了hadesy認證。
選中hadesy認證點擊“匯出→下一步→是,匯出私密金鑰→下一步→設定私密金鑰的密碼→下一步→設定私密金鑰的名稱儲存位置如my.pfx→完成”,將匯出私密金鑰儲存在H盤備用。
最後我們就可以使用signtool對離線應用進行簽名了,同上繼續在命令提示字元下輸入下列的命令進行簽名(******為上面設定的私密金鑰密碼)。