Deploy File to Intune Enrolled Devices as Win-32 App

Copper Contributor

I had a request to Deploy a pdf file to user's desktop and could not find clear documentation, hence here is how I successfully deployed it and decided to share is with this amazing community.

Deploy File to Intune Enrolled Devices

Deploy a file to Intune enrolled device's to "C:\Users\Public\Desktop" through Intune

Step 1: Prepare the files:

  1. The File
  2. Install-file.ps1
  3. Remove-file.ps1
  4. Detect-file.ps1

Step 2" Create an Install, Remove & Detect script & save each scripts

A. Install:

#Installation Script: Install-file.ps1

$FileName = "FileToDesktop.pdf"

$ScriptPath = [System.IO.Path]::GetDirectoryName($MyInvocation.MyCommand.Definition)

Copy-Item -Path "$ScriptPath\$FileName" -Destination "$Env:Public\Desktop"

B. Remove:

# Remove Installation: Remove-file.ps1

$FileName = "FileToDesktop.pdf"

Remove-Item -Path "$Env:Public\Desktop\$FileName"



C. Detect:  # save this in a separate folder

#Detect File : Detect-file.ps1

$FileName = "FileToDesktop.pdf"

if (Test-Path -Path "$Env:Public\Desktop\$FileName"){

    Write-Output "0"



Step 3: collect Install-file .ps1, Remove-file .ps1 and the required files in one folder as shown above and create an Intune installation Package.


PS C:\Intune\WindowsIntunePrepTool> .\IntuneWinAppUtil.exe

Please specify the source folder: C:\DeployFile\FileToDeploy

Please specify the setup file: FileToDesktop.pdf

Please specify the output folder: C:\DeployFile

Do you want to specify catalog folder (Y/N)?N




Step 4. Deploy Intune installation file with the following commands

  • Upload the IntunePackage as " App : Windows app (Win32)



  • Install Command: %windir%\system32\windowspowershell\v1.0\powershell.exe -executionpolicy bypass -file "Install-file.ps1"
  • Uninstall Command: %windir%\system32\windowspowershell\v1.0\powershell.exe -executionpolicy bypass -file "Remove-file.ps1"
  • Operating system architecture = select both 32/64-bit
  • Detection rule: use custom detection script and upload the Detect script created above.






Following the above steps, it is straight forward and easy to deploy a file to Intune Enrolled devices when required.

7 Replies

Thanks for the help! @alazarg
Is it possible, do use the same method for more than one file? Or do I need to to some shenanigans when its more than one file?


That is a good question!
To deploy multiple file using one deployment action, you can modify the install, remove and detect scripts. for example to modify "install-file.ps1"
#Installation Script: Install-file.ps1
$FileName1 = "FileToDesktop1.pdf"
$FileName2 = "FileToDesktop2.pdf"
$FileName3 = "FileToDesktop3.pdf"
$ScriptPath = [System.IO.Path]::GetDirectoryName($MyInvocation.MyCommand.Definition)
Copy-Item -Path "$ScriptPath\$FileName1" -Destination "$Env:Public\Desktop"
Copy-Item -Path "$ScriptPath\$FileName2" -Destination "$Env:Public\Desktop"
Copy-Item -Path "$ScriptPath\$FileName3" -Destination "$Env:Public\Desktop"
I hope this helps.
It does, it worked perfectly. Thanks!



For multiple files in one, how would you save the files to make IntuneWinAppUtil.exe take them in?



Hi Buddy


Great informative post.


How can I get this to work on a standalone EXE file that is in a folder with what looks like lots of dependencies?


I have tried adding my EXE and it's files as well as your 2 files to the Win32 Tool but the install fails.


Any clues?


Info appreciated

@Stuart King 


I have an application (Therefore Navigator by App Extender via Cannon) which has several Windows dependencies. It looks like I have to use Orca to modify the installation package and identify the dependencies, and manage their installation. I put a little bit of effort into it but I ran out of clock cycles and had to move on. Orac is