diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index 4cb30cd..bd3a00e 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -20,6 +20,7 @@ jobs: uses: subosito/flutter-action@v2 with: flutter-version: 3.47.4 + - name: Set up Go uses: actions/setup-go@v6 with: @@ -44,12 +45,29 @@ jobs: flutter pub run build_runner build flutter build windows --release - - name: Copy MinGW runtime DLLs - shell: msys2 {0} + - name: Copy MSVC runtime DLLs + shell: powershell run: | - cp /mingw64/bin/libgcc_s_seh-1.dll build/windows/x64/runner/Release/ - cp /mingw64/bin/libwinpthread-1.dll build/windows/x64/runner/Release/ - cp /mingw64/bin/libstdc++-6.dll build/windows/x64/runner/Release/ + $release = "build/windows/x64/runner/Release" + + Copy-Item C:\Windows\System32\MSVCP140.dll $release -Force + Copy-Item C:\Windows\System32\VCRUNTIME140.dll $release -Force + Copy-Item C:\Windows\System32\VCRUNTIME140_1.dll $release -Force + + - name: Copy MSVC runtime DLLs + shell: powershell + run: | + $crt = Get-ChildItem "${env:ProgramFiles}\Microsoft Visual Studio\2022" -Recurse -Filter "MSVCP140.dll" | + Where-Object { $_.FullName -match '\\x64\\Microsoft\.VC143\.CRT\\' } | + Select-Object -First 1 + + if (-not $crt) { + throw "MSVC runtime not found" + } + + Copy-Item "$($crt.Directory)\MSVCP140.dll" "build/windows/x64/runner/Release/" -Force + Copy-Item "$($crt.Directory)\VCRUNTIME140.dll" "build/windows/x64/runner/Release/" -Force + Copy-Item "$($crt.Directory)\VCRUNTIME140_1.dll" "build/windows/x64/runner/Release/" -Force - name: Install Inno Setup run: choco install innosetup -y