Recently I’ve been working on Paint.Net, I used to install it using the .exe, however found that it would not install under the SYSTEM context. It worked when users would install from the Catalog, but I was unable to push updated versions.
Today I was able to resolve the issue by using the /createMsi feature.
I liked using the .exe, as it was only 6MB and would install for both x86 and x64 machines, but if it doesn’t work in all senarios. So now I’ve switched to using the MSI for consistency.
Offical Documenation: http://www.getpaint.net/doc/latest/UnattendedInstallation.html
- Requires .Net 4.6 or above. (with Paint.Net 4.0.9, as used in this example)
- Nice article on deploying .Net using ConfigMgr HERE. (Just replace 4.5.2 with latest version)
Once downloaded, create the MSI: (I have a script here I use that will create the MSI files, that doesn’t care about the downloaded exe name, and copy the MSI to the source)
REM Using FOR Loop to find any EXE file and run it with these arguments
for %%i in (*.exe) do cmd /c %%i /createMsi CHECKFORBETAS=0 DESKTOPSHORTCUT=0 CHECKFORUPDATES=0
REM Copy the 2 Newly created MSI Files to the Source Folder (Assuming you're running this script from the source folder)
xcopy %userprofile%\desktop\PaintDotNetMsi\* .\ /Y
paint.net.4.0.9.install.exe /createMsi CHECKFORBETAS=0 DESKTOPSHORTCUT=0 CHECKFORUPDATES=0
- /createMsi - Creates the MSI Files and places them on the desktop
- CHECKFORBETAS=o – Disables checking for Beta Version in the Options
- DESKTOPSHORTCUT=0 – Will not create a Desktop Shortcut for Paint.net (Remove this part if you want the icon)
- CHECKFORUPDATES=o – Disables checking for updates in the Options
- More options at the Official Documenation link
Example showing use of the Script, which will create the 2 MSI files on the desktop, then I manually move.
Open Elevated Command Prompt, change directory to the Source, and run the CreateMSI_PaintNet.cmd, the Paint.Net installer box will open showing a status bar, and where it has created the MSI files once completed.
Click Finish for the script to Continue, it will then copy the two MSI Files to the Source Folder:
Create your ConfigMgr Application (I’m only deploying for x64, so I’ve only got 1 deployment type)
Programs: msiexec /i "PaintDotNet_x64.msi"
Detection Method = MSI Info & Version
Requirements = x64
Now you can add an additional deployment for x86, follow the same steps, just change the requirements to x64 condition not exist (Buttom radio button)
Thanks to everyone who develops this great free Photo Editor!