taphead Posted August 9, 2019 Posted August 9, 2019 Can I, using the command-line, instruct the installer where to place the MSI files it creates? I don't appear able to. The installer is being run by NT AUTHORITY\SYSTEM so the files it creates are vanishing. I looked in C:\Windows\System32\Config\SystemProfile but there is no 'Desktop' folder created and the MSIs are not present. Looking at the program in Process Monitor it is clear the installer places its files in C:\Windows\Temp\PdnSetup but the MSIs that are placed in there are not valid (I set an ACL to stop them from being deleted) – the MD5s are different between ones left in there and ones produced on the Desktop. I need to be able to create the MSIs on-the-fly but as the installer is not being run by the logged-in user I have no way to access the installers as the "Desktop" does not exist. As such, if there is a way I can hard-code a directory for the installer to place the MSIs into, please let me know how. Cheers Taphead Quote
Rick Brewster Posted August 9, 2019 Posted August 9, 2019 Can you zoom out a little and give some context about why you're doing things in such a bizarre manner? 1 Quote The Paint.NET Blog: https://blog.getpaint.net/ Donations are always appreciated! https://www.getpaint.net/donate.html
taphead Posted August 9, 2019 Author Posted August 9, 2019 Hi Rick, it's a valid question. I'm looking to deploy Paint.NET using an RMM system and I want to make the script as automated as possible. Everything has been written to be generic such that on each script run the latest version of Paint.NET is ascertained, downloaded and extracted, at which point the MSIs must be produced from the original installer file. Altering the system is, unfortunately, not an option here; really I either need to figure this out or abandon it. If I execute one of the MSIs from the PdnSetup folder it instructs me to do the installation via the setup.exe. I have the entire contents of the PdnSetup folder saved; is it possible that you could tell me what steps are taken to polish off the MSIs to turn them into standalones so I can try and replicate them? I'm writing the script in PowerShell. Many thanks Taphead Quote
Rick Brewster Posted August 10, 2019 Posted August 10, 2019 The "polishing" that /createMsi does is just baking in MSI properties into the MSI files. You don't need this if you can provide the correct MSI properties on the command-line. The most important one to get started with is USINGWIZARD=1, which is used to steer folks toward using the setup wizard or /createMsi. But if you know what you're doing (TM), it's no big deal to supply it on the command line to msiexec. Other properties are listed at https://www.getpaint.net/doc/latest/UnattendedInstallation.html Quote The Paint.NET Blog: https://blog.getpaint.net/ Donations are always appreciated! https://www.getpaint.net/donate.html
taphead Posted August 10, 2019 Author Posted August 10, 2019 Hi Rick, adding USINGWIZARD=1 to the end of the MSIExec query worked perfectly. Thank you! Taphead 1 Quote
Ego Eram Reputo Posted August 10, 2019 Posted August 10, 2019 USINGWIZARD is not actually mentioned in the documentation. I'll make a note to add it. Quote ebook: Mastering Paint.NET | resources: Plugin Index | Stereogram Tut | proud supporter of Codelab plugins: EER's Plugin Pack | Planetoid | StickMan | WhichSymbol+ | Dr Scott's Markup Renderer | CSV Filetype | dwarf horde plugins: Plugin Browser | ShapeMaker
Rick Brewster Posted August 10, 2019 Posted August 10, 2019 51 minutes ago, Ego Eram Reputo said: USINGWIZARD is not actually mentioned in the documentation. I'll make a note to add it. No, I'd rather not have it documented. That's intentional. Quote The Paint.NET Blog: https://blog.getpaint.net/ Donations are always appreciated! https://www.getpaint.net/donate.html
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.