需求:開(kāi)發(fā)一個(gè)頁(yè)面,頁(yè)面的導(dǎo)航欄需要啟動(dòng)本地下載好的綠色軟件
問(wèn)題1: 如何調(diào)用本地軟件?
答:這個(gè)很簡(jiǎn)單只需要調(diào)用window.location.href = “應(yīng)用名稱(chēng)://”
即可,有同學(xué)就會(huì)問(wèn)了這個(gè)應(yīng)用名稱(chēng)是什么?應(yīng)用名稱(chēng)為應(yīng)用安裝時(shí)在注冊(cè)表里面注冊(cè)的名稱(chēng),以微信為例,看下圖:
啟動(dòng)本地的微信,調(diào)用window.location.href = “weixin://”
就可以了,也可直接在游覽器地址欄輸入weixin://
進(jìn)行調(diào)用
問(wèn)題2:綠色軟件無(wú)需進(jìn)行安裝,注冊(cè)表里面沒(méi)有對(duì)應(yīng)注冊(cè)的名稱(chēng),怎么辦?
答:從上一個(gè)問(wèn)題中,我們可以看出來(lái),本地的軟件的調(diào)用,是游覽器通過(guò)注冊(cè)表中的名稱(chēng)進(jìn)行調(diào)用的。所以最簡(jiǎn)單的方式就是在注冊(cè)表中添加一個(gè)對(duì)應(yīng)應(yīng)用的名稱(chēng)和地址??煽紤]到我們這邊是可以調(diào)用多個(gè)綠色軟件的,并減少客戶(hù)使用的難度,我給他自定義了一個(gè)操作程序,看下圖:

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\NSRTool]
@="NSRTool Protocol"
"URL Protocol"= ""
[HKEY_CLASSES_ROOT\NSRTool\DefaultIcon]
@="E:\\arptools-smg_R2.03_20240530_prj\\bin\\NSRTools.exe"
[HKEY_CLASSES_ROOT\NSRTool\shell\open\command]
@="E:\\arptools-smg_R2.03_20240530_prj\\bin\\NSRTools.exe"
[HKEY_CLASSES_ROOT\NARIConfiguration]
@="NARIConfiguration Protocol"
"URL Protocol"= ""
[HKEY_CLASSES_ROOT\NARIConfiguration\DefaultIcon]
@="E:\\NARIConfigTool_V1.47\\NARI Configuration Tool.exe"
[HKEY_CLASSES_ROOT\NARIConfiguration\shell\open\command]
@="\"E:\\NARIConfigTool_V1.47\\NARI Configuration Tool.exe\""
建一個(gè)后綴為reg的文件,按照要求輸入以上內(nèi)容,多個(gè)應(yīng)用則依次追加。 保存成功后,雙擊運(yùn)行即可。也可去注冊(cè)表中查看相應(yīng)應(yīng)用名稱(chēng)是否注冊(cè)成功。
OK,以上就是綠色軟件正常的調(diào)用。大家是不是覺(jué)得就沒(méi)有問(wèn)題了,可我這邊還發(fā)現(xiàn)了一個(gè)很頭疼的問(wèn)題,希望大家沒(méi)有遇到,看問(wèn)題3
問(wèn)題3:游覽器調(diào)用的軟件,出現(xiàn)中文亂碼,怎么辦?
答:剛開(kāi)始我們都以為是軟件的兼容問(wèn)題,然后下載了最新版本的,還是不行。然后找各種資料,有的說(shuō)是電腦的編碼問(wèn)題,有的說(shuō)游覽器編碼問(wèn)題,我就不具體說(shuō)了,網(wǎng)上都有。反正我都試了都不行,而且操作流程比較復(fù)雜,不符合客戶(hù)需求。后來(lái)我發(fā)現(xiàn)通過(guò)應(yīng)用程序打開(kāi)和cmd進(jìn)行打開(kāi)都沒(méi)有問(wèn)題,我就想能不能通過(guò)cmd來(lái)進(jìn)行應(yīng)用程序的調(diào)用,然后我就將調(diào)用cmd啟動(dòng)程序代碼放到了注冊(cè)表里面了,解決方式如下:

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\NSRTool]
@="NSRTool Protocol"
"URL Protocol"= ""
[HKEY_CLASSES_ROOT\NSRTool\DefaultIcon]
@="E:\\arptools-smg_R2.03_20240530_prj\\bin\\NSRTools.exe"
[HKEY_CLASSES_ROOT\NSRTool\shell\open\command]
@="cmd /c \"cd /d E:\\arptools-smg_R2.03_20240530_prj\\bin\\ && start \"\" NSRTools.exe\""
轉(zhuǎn)自https://juejin.cn/post/7482405430633021440
該文章在 2025/3/18 9:02:55 編輯過(guò)