2017-07-17 69 views
1

我創建了win32.Net桌面應用程序。我想使用makeappx.exe工具爲每個後期構建事件創建解決方案的appx包。當我在post build事件上運行命令時:MakeAppx pack/d input_directorypath/p filepath.appx,它失敗,錯誤代碼爲9009.我不知道這是爲什麼當我使用開發人員命令提示符運行此命令時出現錯誤,它給出所需的輸出。我還注意到,當我使用普通的命令提示符運行上面的命令時,它會給出同樣的錯請幫助。如何將Makeappx.exe命令集成到VS2015的postbuild事件中以爲當前解決方案創建appx?

回答

0

我已測試過您的命令並轉載了您的問題。問題是,當你在post build事件上運行命令時,它沒有發現makeappx.exe工具。該命令不完整。下面是一個完整的命令。

"C:\Program Files (x86)\Windows Kits\10\bin\x64\MakeAppx.exe" pack -d "C:\test1\VLCUWPApp\PackageFiles" -p "C:\test1\VLCUWPApp\VLCUWPApp.appx" 

爲了您的需求,您可以添加C:\Program Files (x86)\Windows Kits\10\bin\x64路徑環境變量,然後 你可以成功運行,你所提到的命令。

請注意,如果appx包已經存在於目標路徑中,則構建後事件將被卡住。因爲它正在等待你輸入「Y」來覆蓋舊的包裹。但是,目前它沒有提供輸入界面。所以你應該手動刪除舊的包。

+0

感謝您的輸入,尼科。我懂了。設置環境變量並運行命令爲「C:\ Program Files(x86)\ Windows Kits \ 10 \ bin \ x64 \ MakeAppx.exe」後,我就會得到所需的輸出。但是當我設置環境變量後運行「MakeAppx.exe」時,它不會識別命令。另外,我們可以在makeappx命令中指定/ O屬性來覆蓋現有的appx。然後,我們不需要在每個後期構建事件中手動刪除早期的appx。 –

+0

如果您設置了環境變量。請嘗試運行'makeappx pack -d「C:\ test1 \ VLCUWPApp \ PackageFiles」-p「C:\ test1 \ VLCUWPApp \ VLCUWPApp.appx」命令,而不是「MakeAppx.exe」。 –

相關問題