From 57ab6cfed33e6e64a1e80fa1864ccddf56a0b302 Mon Sep 17 00:00:00 2001 From: rankun Date: Fri, 18 Sep 2020 12:58:03 +0800 Subject: [PATCH] fix: no find vcruntime dll Close #274 --- .github/workflows/windows.yml | 3 +++ ci/win/publish_for_win.bat | 12 ++++++++++++ 2 files changed, 15 insertions(+) diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index 1e43fb8..af60f92 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -38,6 +38,7 @@ jobs: env: target-name: QtScrcpy vcvarsall-path: 'C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvarsall.bat' + vcinstall-path: 'C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC' qt-install-path: ${{ github.workspace }}/${{ matrix.qt-ver }} plantform-des: win # 步骤 @@ -84,6 +85,8 @@ jobs: - name: Package id: package env: + ENV_VCVARSALL: ${{ env.vcvarsall-path }} + ENV_VCINSTALL: ${{ env.vcinstall-path }} ENV_QT_PATH: ${{ env.qt-install-path }} publish_name: ${{ env.target-name }}-${{ env.plantform-des }}-${{ matrix.msvc-arch }}-${{ steps.get-version.outputs.version }} run: | diff --git a/ci/win/publish_for_win.bat b/ci/win/publish_for_win.bat index 2cb836c..50b2636 100644 --- a/ci/win/publish_for_win.bat +++ b/ci/win/publish_for_win.bat @@ -7,9 +7,14 @@ echo check ENV echo --------------------------------------------------------------- :: 从环境变量获取必要参数 +:: example: D:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build\vcvarsall.bat +set vcvarsall="%ENV_VCVARSALL%" +:: 设置了VCINSTALLDIR,windeployqt会自动copy vcruntime dll +set VCINSTALLDIR="%ENV_VCINSTALL%" :: 例如 d:\a\QtScrcpy\Qt\5.12.7 set qt_msvc_path="%ENV_QT_PATH%" +echo ENV_VCVARSALL %ENV_VCVARSALL% echo ENV_QT_PATH %ENV_QT_PATH% :: 获取脚本绝对路径 @@ -51,6 +56,13 @@ if /i %cpu_mode% == x86 ( ) set PATH=%qt_msvc_path%;%PATH% +:: 注册vc环境(注册以后,windeployqt会把vc_redist复制过来(vcruntime安装包)) +:: if /i %cpu_mode% == x86 ( +:: call %vcvarsall% %cpu_mode% +:: ) else ( +:: call %vcvarsall% %cpu_mode% +:: ) + if exist %publish_path% ( rmdir /s/q %publish_path% )