Zoom7000 Posted January 26, 2012 Share Posted January 26, 2012 (edited) I administer a network at a high school. We have about 600 PCs of all different specs, ranging from Pentium 4s to Core i7's. I have noticed since version 3.5.10 of Paint.NET that it can take from 45 minutes to about an hour to install Paint.NET. Mainly it takes forever during the "Optimizing Paint.NET's performance for your system" I never noticed this problem with any of the previous versions of Paint.NET, only since 3.5.10. Any ideas what I can do to avoid the installation taking so long? All our PCs are running Windows XP with the latest .NET Framework 4 Extended (+ 1, 1.1, 2, 3, 3.5 etc) Edited January 26, 2012 by Zoom7000 Link to comment Share on other sites More sharing options...
Rick Brewster Posted January 26, 2012 Share Posted January 26, 2012 This may happen if you've recently installed either a service pack for Windows, or an update to .NET. The "optimizing" stage of the Paint.NET installer runs a program called NGEN, which precompiles the binaries so they don't have to be Just-In-Time (JIT) compiled every time you start the app. It saves a few seconds every time you start it (no joke), and also saves a TON of memory if you've got more than 1 copy of Paint.NET running on the machine (this mostly applies to a Remote Desktop / Terminal Server). But, when you've got a fresh Windows SP or a .NET update, the NGEN cache is invalidated. Then, when Paint.NET goes to install, large portions of .NET also have to be recompiled before it gets to compile the new Paint.NET install. If you want to save time during the day, then blast the following command ahead of time before you install Paint.NET: "ngen update". Usually this is taken care of automatically when the system is "idle" by the .NET Optimization Service, but sometimes schedules don't line up. Especially for an admin such as yourself who may go and apply the latest Windows Updates, and then deploy Paint.NET right afterward. ngen will be in C:\Windows\Microsoft.NET\Framework\v2.0.50727\ngen.exe, and requires Administrator privilege to run. If you're on 64-bit, then replace Framework with Framework64. And when Paint.NET moves to .NET 4 or later, you'll have to adjust the "v2.0.50727" part. (or just use a for-loop and run every copy of ngen.exe that's in there, it won't hurt anything) NGEN docs for .NET 2.0 - 3.5 SP1: http://msdn.microsoft.com/en-us/library/6t9t5wcf(v=vs.80).aspx NGEN docs for .NET 4.0: http://msdn.microsoft.com/en-us/library/6t9t5wcf(v=vs.100).aspx 1 The Paint.NET Blog: https://blog.getpaint.net/ Donations are always appreciated! https://www.getpaint.net/donate.html Link to comment Share on other sites More sharing options...
delpart Posted January 26, 2012 Share Posted January 26, 2012 And that just explained a backup problem I was fighting with last night ... Woot. PDN trolling just paid for itself. Thank you for that detailed explanation and links Rick. *** Gallery at PDN-Fans Link to comment Share on other sites More sharing options...
Zoom7000 Posted January 27, 2012 Author Share Posted January 27, 2012 Thanks for the update Rick. The trouble I have is I integrate applications in to our Windows XP build so that once Windows has finished installing, the PC is ready to go without any further need for update or interaction. So, .NET is one of the first things installed and Paint.NET is one of the last things installed, it just increases the build time quite considerably. Am I reading correctly that running "ngen update" should reduce the installation time? I have just run ngen update on a live PC and the installation is still taking about an hour. Link to comment Share on other sites More sharing options...
Rick Brewster Posted January 27, 2012 Share Posted January 27, 2012 Are you deploying Paint.NET by running the installer EXE on each machine, or are you using AD/GPO to push out the MSI (created via /createMsi) to the network ? If the latter, adding QUEUENGEN=1 after /createMsi may help. This will bake the QUEUENGEN property into the MSI. The Paint.NET Blog: https://blog.getpaint.net/ Donations are always appreciated! https://www.getpaint.net/donate.html Link to comment Share on other sites More sharing options...
Zoom7000 Posted February 2, 2012 Author Share Posted February 2, 2012 Are you deploying Paint.NET by running the installer EXE on each machine, or are you using AD/GPO to push out the MSI (created via /createMsi) to the network ? If the latter, adding QUEUENGEN=1 after /createMsi may help. This will bake the QUEUENGEN property into the MSI. Ah, that may help. At the moment I create the MSI using the following command: PaintDotNet.exe /createMSI DESKTOPSHORTCUT=0 So, I'll add that to the creator and see how it goes. Thanks for your continued support! Link to comment Share on other sites More sharing options...
Mischa Posted September 24, 2021 Share Posted September 24, 2021 Installation is extremely slow, thrashing the disk, and each update takes longer. Though that time is taken optimizing the interpreted .NET app, it makes this unusable. Regrettably, I've removed Paint.net in favor of apps such as IrfanView, which can be installed in seconds, simply by moving the executable in its folder to Program Files. Link to comment Share on other sites More sharing options...
BoltBait Posted September 24, 2021 Share Posted September 24, 2021 @Mischa, this thread is 9 years old... closing. Also, don't let the door hit you on the way out. 1 Download: BoltBait's Plugin Pack | CodeLab | and a Free Computer Dominos Game Link to comment Share on other sites More sharing options...
Recommended Posts