opabravo / azure-speech-recogn

語音轉文字CLI工具,使用AZURE語音服務
1 stars 1 forks source link

想請問如何自行包裝成EXE檔 #1

Open kaichen0712 opened 2 years ago

kaichen0712 commented 2 years ago

作者您好,想請問一下因我有新增功能為讓使用者自行輸入region,那想打包成 .exe讓其他人使用,開啟cmd利用pyinstaller -F .\main.py打包後可以讓使用者輸入key及region,但是要執行main -v時發生RuntimeError: Exception with an error code: 0x38 (SPXERR_AUDIO_SYS_LIBRARY_NOT_FOUND)這個錯誤,但是執行main -f是可以執行的,想請問作者該如何包裝成 .exe檔才能順利執行 謝謝!! 圖片1

opabravo commented 2 years ago

您好,

包裝成執行檔需include azure語音服務套件的dll 已將說明更新到README.md 請查看

若後續有任何想法,歡迎在此repo上提交pull requests 我可以直接幫你deploy

opabravo commented 2 years ago

[可以麻煩您幫我修正一下嗎!!](url)

哪裡須修正呢?

kaichen0712 commented 2 years ago

您好,不好意思打擾。想請問您目前包裝成功可以使用了。但是在別人的電腦下載下來會被WINDOWS系統的防毒當成是木馬病毒,想請問您還有相關的包裝事項要注意嗎,還請您指點指點,麻煩了謝謝您。 S__74096658 001

opabravo commented 2 years ago

您好,不好意思打擾。想請問您目前包裝成功可以使用了。但是在別人的電腦下載下來會被WINDOWS系統的防毒當成是木馬病毒,想請問您還有相關的包裝事項要注意嗎,還請您指點指點,麻煩了謝謝您。 S__74096658 001

您好,

自行包裝的pyinstaller執行檔,因未被簽證合法的數位簽章 以及pyinsaller本身常被很多不法人士拿來做後門、病毒的原因 大多數防毒軟體的數據庫都將含有pyinsyaller特徵碼的檔案視為病毒 與如何包裝、程式碼內容較無關係喔~

目前只能請使用者在防毒系統設定內將其排除 或者可以改用nuitka之類的套件去包裝試試

opabravo commented 2 years ago

我這才發現,我這邊compile的執行檔是通過Windows Dedender的

可能是你compile的環境沒有裝VS Redist 也可以嘗試Rebuild Bootloader

opabravo commented 2 years ago

您若是對我包裝的執行檔抱有疑慮 可使用Pyinstaller Extractor解包後進行逆向工程 我的版本並沒有採用UPX或者obfuscate過

kaichen0712 commented 2 years ago

了解!感謝您,我會再嘗試看看,希望後續能成功!

opabravo commented 2 years ago

了解!感謝您,我會再嘗試看看,希望後續能成功!

這是我的版本在Virus Total的結果 - https://www.virustotal.com/gui/file-analysis/NWVlOGI1ODRjZGU3YmViOTE0MjU3OGJjMjY3MDY0MDc6MTY1MTY1NjA1MA==

能否請您回傳您自己版本的數據? 或許我能分析問題

kaichen0712 commented 2 years ago

您好,這是我的結果-https://www.virustotal.com/gui/file/b91c11255aed5aa4cf959d9eac7399aeae884f3280a3cad0705ae75dee833c07?nocache=1

opabravo commented 2 years ago

您好,這是我的結果-https://www.virustotal.com/gui/file/b91c11255aed5aa4cf959d9eac7399aeae884f3280a3cad0705ae75dee833c07?nocache=1

收到 您有試過去compile我repo的版本嗎? 我想知道在你環境compile後的virus total掃描結果

來看是程式碼還是環境差異造成的

kaichen0712 commented 2 years ago

想請問一下是將您的檔案下載下來,然後將MAIN.exe檔拿去掃描嗎?不好意思最近才剛接觸還不太熟悉

opabravo commented 2 years ago

想請問一下是將您的檔案下載下來,然後將MAIN.exe檔拿去掃描嗎?不好意思最近才剛接觸還不太熟悉

沒事, 要把整個repo git clone 然後下pyinsyaller指令去建置檔案再上傳

kaichen0712 commented 2 years ago

不好意思 GIT clone檔案我會 但是pyinstaller 指令可以向您詢問該如何下嗎

opabravo commented 2 years ago

不好意思 GIT clone檔案我會 但是pyinstaller 指令可以向您詢問該如何下嗎

在資料夾內開啟cmd 打 pyinstaller main.spec

kaichen0712 commented 2 years ago

我現在來試試看!

kaichen0712 commented 2 years ago

您好,這是我剛剛檢測結果 https://www.virustotal.com/gui/file/992c6699622f0ce6f9bfb03236cd2eb8ea91fbd151645f1eac1937de5a3bd324?nocache=1

opabravo commented 2 years ago

您好,這是我剛剛檢測結果 https://www.virustotal.com/gui/file/992c6699622f0ce6f9bfb03236cd2eb8ea91fbd151645f1eac1937de5a3bd324?nocache=1

看來是環境問題 試問您的python版本?以及Pyinsyaller是否為最新版?

可用python -V查看 pip install pyinstaller --upgrade更新

kaichen0712 commented 2 years ago

您好python版本為Python 3.10.4 Successfully installed pyinstaller-5.0.1-這是pyinstaller更新完的訊息

opabravo commented 2 years ago

您好python版本為Python 3.10.4 Successfully installed pyinstaller-5.0.1-這是pyinstaller更新完的訊息

了解,可以重新compile,再上傳Virus Total試試 好奇檔案的hash會不會有所不同

kaichen0712 commented 2 years ago

請問需要重新GIT CLONE嗎還是直接執行pyinstaller即可呢!

opabravo commented 2 years ago

執行pyinstaller

重新開cmd執行pyinstaller就好呦

kaichen0712 commented 2 years ago

好的請您稍等一下!謝謝您

kaichen0712 commented 2 years ago

您好!!!這是剛剛檢測的結果,好像有變好了 https://www.virustotal.com/gui/file/0679d8614eb8aff77185add15bb42dc28ff035e23df13d84396eb91d9a452524?nocache=1

opabravo commented 2 years ago

您好!!!這是剛剛檢測的結果,好像有變好了 https://www.virustotal.com/gui/file/0679d8614eb8aff77185add15bb42dc28ff035e23df13d84396eb91d9a452524?nocache=1

接下來可以參考這篇 https://www.reddit.com/r/learnpython/comments/ng3hmp/pyinstaller_create_onefile_exe_windows/

我自己是沒遇到這樣的問題...可能是Visual Studio的環境不同導致

kaichen0712 commented 2 years ago

剛剛試試看我自己包裝的執行檔,也少了一點,我再試試看您提供的文章來做!謝謝您熱情協助 https://www.virustotal.com/gui/file/f1372bd07207c1c5a780e953f1954279293df17aa07e2493d91aa242ec8072ba?nocache=1 不好意思可以請問一下您是如何包裝的呢? 是用您提到的VS Redist 還是這個呢Rebuild Bootloader

opabravo commented 2 years ago

剛剛試試看我自己包裝的執行檔,也少了一點,我再試試看您提供的文章來做!謝謝您熱情協助 https://www.virustotal.com/gui/file/f1372bd07207c1c5a780e953f1954279293df17aa07e2493d91aa242ec8072ba?nocache=1 不好意思可以請問一下您是如何包裝的呢? 是用您提到的VS Redist 還是這個呢Rebuild Bootloader

我兩者都沒用到,因為我沒遇到那樣的問題 那兩個連結只是幫你google後找到最可能的解決方案

我自己初步推測是,我還裝了許多其他的微軟開發套件 因此build出來的檔案特徵碼有所改善

kaichen0712 commented 2 years ago

那您是直接用pyinstaller包裝的嗎?

opabravo commented 2 years ago

那您是直接用pyinstaller包裝的嗎?

是的,跟在此repo上,一模一樣的參數

kaichen0712 commented 2 years ago

了解!我再來嘗試看看,有問題再想您請教,謝謝您。

kaichen0712 commented 2 years ago

image 另外想請問出現這種錯誤該如何處理,好像是寫入空白值所以才錯的

kaichen0712 commented 2 years ago

那我要重新CLONE下來修改嗎!

opabravo commented 2 years ago

那我要重新CLONE下來修改嗎!

可以呦,我目前還沒deploy, 你可以先clone,再自行包裝exe