知っている人が多いのかどうかわからないが、Qtでアプリを作る方法として通常のQtCreatorを使う方法の他に、VisualStudioを使う方法がある。
VisualStudioをつかうやり方でなにかメリットがあるのか?ってことだけどとりあえずappxbundleとかのwindows10標準のインストーラーが楽に作れるってのがあります。だからMicrosoftStore
にも楽にアップできる。
これをQtCreatorでやるとCUIでコマンドを打ち続ける必要があり結構面倒。
そういうUWPでないAPPでストア用のパッケージを作るのをMSの用語でデスクトップブリッジというらしい。
https://docs.microsoft.com/ja-jp/windows/uwp/porting/desktop-to-uwp-root
字が多すぎて頭が痛くなる。
でVisualStudioで楽にQtAPPをインストーラーパッケージにしよう。ってのが言いたいのです。
1.QtSDKとVisualStudio2017を両方用意。どちらも無償のやつで構わない、
一応VisualStudioでVCでビルドできるのを確認。
QtCreatorでVisualStudio環境(MINGWでなく)でビルドできるのを確認。
2.VSの"ツールー>拡張機能と更新プログラム"から"Qt Visual Studio tools"をインストール
なかったらこれ
https://download.qt.io/development_releases/vsaddin/
3.2のあとVSにQtを認識させる
それには "Qt VS Tools->Qt Options"からQtのパスを設定
4.次に.Proを読み込むかQtのソリューションを新規作成する。
よみこむときは空のソリューションを作ってから
"Qt VS Tools->Open Qt project file"
新規作成時は
これでビルドしてアプリを作成、
最後にパッケージ作成の前にリリースでビルドすること
5.このままでは開発環境でなく、EXEをクリックするとDLLがないので起動できないといわれるのでDEPLOYの準備
WINDOWSメニューから”開発者用コマンドプロンプト”起動
RELEASEの場所に移動
C:\Users\XXXXX\source\repos\QtGuiApplication1\Win32\Release
みたいな場所にCDで移動
ここで
C:\Qt\5.12.2\msvc2017\bin\windeployqt.exe QtGuiApplication1.exe
※念のために言うけど上のパス、EXE名は自分の環境をチェックして書き換えること
コピペはたぶんだめ
できたらもう一度EXEをクリックして起動。できなかったらさらにDLLとかあつめて起動できるまでやること(OpenCVとかカスタムのDLLは自動では集まらない)
6.出来たら次にパッケージ用のプロジェクトを作成
そのプロジェクトはWINDOWS アプリケーションパッケージプロジェクトという。
プロジェクトテンプレートの中にある
C#の中にあるのがちょっと気になるが深く考える必要なし。
できたらこんな感じ
このdemo saplが今回新規に作ったプロジェクト
プロパティとか変えたいときはPackage.appxmanifestをクリック
7.installerのセットアップ
”アプリケーション”の右クリックの”参照の追加”で起動するアプリの選択、
さらにDLLの一式(5でつくったものからEXEを抜く)をエクスプローラーからドラッグして載せる。
うまくいくとこうなる。
なおDLL一式のフォルダ名はAPPと一致しないといけない
違うと(SYSとか)
QtGuiApplication/QtGuiAplicaation.exe
SYS/*.dll
みたいになる。
8.イントーラappxbundleを作成
こんな感じでインストーラの右クリックー>ストアー>アプリパッケージの作成。
とりあえずサイドロード用を作って自分のPCにインストールしてください。
※インストールの前にライセンスを入れること
やりかたは上のcerに対して”証明書のインストールー>ローカルコンピューター>証明書をすべて次のストアに配置ー>信頼されたルート証明機関”
https://qiita.com/nakashima_bike/items/0fe974cd6991b5f81f89