LoginSignup
0
4

More than 3 years have passed since last update.

VisualStudio2017でQtでアプリを開発してappxbundle形式のイントーラでインストールするまで

Last updated at Posted at 2019-03-19

知っている人が多いのかどうかわからないが、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のパスを設定
p1.png

4.次に.Proを読み込むかQtのソリューションを新規作成する。
よみこむときは空のソリューションを作ってから
"Qt VS Tools->Open Qt project file"
新規作成時は
p2.png
これでビルドしてアプリを作成、
最後にパッケージ作成の前にリリースでビルドすること

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は自動では集まらない)

p3.png

6.出来たら次にパッケージ用のプロジェクトを作成
そのプロジェクトはWINDOWS アプリケーションパッケージプロジェクトという。
プロジェクトテンプレートの中にある
p4.png
C#の中にあるのがちょっと気になるが深く考える必要なし。
できたらこんな感じ
p5.png
このdemo saplが今回新規に作ったプロジェクト
プロパティとか変えたいときはPackage.appxmanifestをクリック

7.installerのセットアップ
 ”アプリケーション”の右クリックの”参照の追加”で起動するアプリの選択、
 さらにDLLの一式(5でつくったものからEXEを抜く)をエクスプローラーからドラッグして載せる。
 うまくいくとこうなる。
p6.png
なおDLL一式のフォルダ名はAPPと一致しないといけない
違うと(SYSとか)
QtGuiApplication/QtGuiAplicaation.exe
SYS/*.dll
みたいになる。

8.イントーラappxbundleを作成
image.png
こんな感じでインストーラの右クリックー>ストアー>アプリパッケージの作成。
image.png

とりあえずサイドロード用を作って自分のPCにインストールしてください。
※インストールの前にライセンスを入れること
やりかたは上のcerに対して”証明書のインストールー>ローカルコンピューター>証明書をすべて次のストアに配置ー>信頼されたルート証明機関”
https://qiita.com/nakashima_bike/items/0fe974cd6991b5f81f89

0
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
4