Commands for installing Affinity without prompts, removing it again and detecting it from deployment tools. A command is shown only when it is certain: from the manifest or the installer technology’s documented default.
Related guide: Silent install switches: MSI, NSIS, Inno Setup · Uninstall a program with the registry or PowerShell
With winget
PowerShell
winget install --id Canva.Affinity -e --silent --accept-package-agreements --accept-source-agreementswinget upgrade --id Canva.Affinity -e --silentwinget uninstall --id Canva.Affinity -e --silentBy installer
64-bit · MSIX
Silent install
Add-AppxPackage -Path Affinity-Affinity-Store-x64-4940-ce057d0adfd09febd5029b87f93128d8f0b3b603.msixUninstall
Get-AppxPackage -Name Canva.Affinity | Remove-AppxPackage- Install folder
- %ProgramFiles%/WindowsApps/Canva.Affinity_3.3.1.4940_x64__8a0j1tnjnt4a4
ARM64 · MSIX
Silent install
Add-AppxPackage -Path Affinity-Affinity-Store-arm64-4940-ce057d0adfd09febd5029b87f93128d8f0b3b603.msixUninstall
Get-AppxPackage -Name Canva.Affinity | Remove-AppxPackage- Install folder
- %ProgramFiles%/WindowsApps/Canva.Affinity_3.3.1.4940_arm64__8a0j1tnjnt4a4
PowerShell: download, verify, install
Downloads the official file, checks its SHA256 and installs it silently.
install-affinity.ps1
$url = 'https://affinity-update.serif.com/windows/3/studio/retail/Affinity-Affinity-Store-x64-4940-ce057d0adfd09febd5029b87f93128d8f0b3b603.msix'
$sha256 = 'C598F40AF2EC06A1AD7F4280FAE1D68A5F2C16D10C7C649E48059370A158F98D'
$file = Join-Path $env:TEMP 'Affinity-Affinity-Store-x64-4940-ce057d0adfd09febd5029b87f93128d8f0b3b603.msix'
Invoke-WebRequest -Uri $url -OutFile $file -UseBasicParsing
if ((Get-FileHash $file -Algorithm SHA256).Hash -ne $sha256) { throw 'SHA256 mismatch' }
Add-AppxPackage -Path $file install-affinity.ps1
$url = 'https://affinity-update.serif.com/windows/3/studio/retail/Affinity-Affinity-Store-arm64-4940-ce057d0adfd09febd5029b87f93128d8f0b3b603.msix'
$sha256 = 'BDC30EF7A78866A5DAECA1FE71F181DB8A9DE89AC4CF3B285E7D9595B2E318D9'
$file = Join-Path $env:TEMP 'Affinity-Affinity-Store-arm64-4940-ce057d0adfd09febd5029b87f93128d8f0b3b603.msix'
Invoke-WebRequest -Uri $url -OutFile $file -UseBasicParsing
if ((Get-FileHash $file -Algorithm SHA256).Hash -ne $sha256) { throw 'SHA256 mismatch' }
Add-AppxPackage -Path $file