|
Answer» Hello everyone,
So for the past couple of years I've used paint.net to make graphics on my computer, and I've gotten to know it very well, and didn't think I'd ever need to explore NEW possibilities. Well, some months ago it just decided to not work anymore. I was in the middle of working on a project for school, and when I opened it to start working again, it crashed as soon as I tried to open up my FILE. No, they're not corrupt, I've used them on other computers that are running the program just fine, and was able to do it that way. The issue here is that I want it on my desktop that has the specs to actually run the program through heavy editing, which my laptop is pretty poor at. So right now that's my only option, and I really want to get this issue solved.
So to reiterate, whenever I try to open a file, the program crashes, and I can't do anything to get around it. I can actually make something new, but I can't save or else it will crash then, which isn't worth the work even for a screencap. Apparently the issue is some kind of a GDI+ issue that should have been solved when I put a new GDI+ file into my system32 (there were NO issues after I restarted), since apparently I didn't have one there. So now after uninstalling and reinstalling hundreds of times, and looking into everything, I've turned up blank and I really have nowhere else to turn. The forums never responded, the program dev didn't respond, nothing. So I'd love it if anyone had a clue as to what I could try to make the darned program work.
Here are the exception details I receive every time:
Exception details: System.Runtime.InteropServices.External Exception (0x80004005): A generic error occurred in GDI+. at System.Drawing.Image.Save(Stream stream, ImageCodecInfo encoder, EncoderParameters encoderParams) at PaintDotNet.AppModel.MostRecentFilesSer vice.SaveMruList() in D:\src\pdn\paintdotnet\src\PaintDotNet\AppModel\MostRecentFilesService.cs:line 263 at PaintDotNet.Controls.DocumentWorkspace. AddToMruList() in D:\src\pdn\paintdotnet\src\PaintDotNet\Controls\DocumentWorkspace.cs:line 2163 at PaintDotNet.Controls.AppWorkspace.OpenF ilesInNewWorkspace(String[] fileNames) in D:\src\pdn\paintdotnet\src\PaintDotNet\Controls\AppWorkspace.cs:line 2367 at PaintDotNet.Actions.OpenFileAction.Perf ormAction(AppWorkspace appWorkspace) in D:\src\pdn\paintdotnet\src\PaintDotNet\Actions\OpenFileAction.cs:line 45 at PaintDotNet.Controls.AppWorkspace.Perfo rmAction(AppWorkspaceAction performMe) in D:\src\pdn\paintdotnet\src\PaintDotNet\Controls\AppWorkspace.cs:line 1905 at PaintDotNet.Controls.AppWorkspace.OnCom monActionsStripButtonClick(Object sender, ValueEventArgs`1 e) in D:\src\pdn\paintdotnet\src\PaintDotNet\Controls\AppWorkspace.cs:line 2574 at PaintDotNet.ValueEventHandlerExtensions .Raise[T](ValueEventHandler`1 handler, Object sender, T value) in D:\src\pdn\paintdotnet\src\Base\ValueEventHandlerExtensions.cs:line 30 at PaintDotNet.Controls.CommonActionsStrip .OnItemClicked(ToolStripItemClickedEventArgs e) in D:\src\pdn\paintdotnet\src\PaintDotNet\Controls\CommonActionsStrip.cs:line 182 at System.Windows.Forms.ToolStrip.HandleIt emClick(ToolStripItem dismissingItem) at System.Windows.Forms.ToolStripItem.Hand leClick(EventArgs e) at System.Windows.Forms.ToolStripItem.Hand leMouseUp(MouseEventArgs e) at System.Windows.Forms.ToolStrip.OnMouseU p(MouseEventArgs mea) at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.ToolStrip.WndProc(Message& m) at PaintDotNet.SystemLayer.ToolStripEx.Wnd Proc(Message& m) in D:\src\pdn\paintdotnet\src\SystemLayer\ToolStripEx.cs:line 82 at System.Windows.Forms.NativeWindow.Callb ack(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
If anyone has any clue of what to do, please tell me, I will be extremely thankful for a permanent solution.It seems like it is CRASHING trying to create the MRU entry in the registry.
I would suggest deleting the HKEY_CURRENT_USER\Software\Paint.NET registry key. This key stores Paint.NET preferences as well, so keep that in MIND since they will be reset.
It seems to me that one of the files listed in your MRU are corrupted. There is no MRU thumbnail information, so Paint.NET reads the file and tries to save it as a thumbnail. The Exception occurs when it saves because GDI+ DEFERS the actual decoding to when the bits are needed (which in this case is when it get's written elsewhere).
Side note: Paint.NET/.NET itself does NOT use GdiPlus.dll from the System32 folder. GdiPlus.dll is loaded from the Windows Side-by-side install. eg. in my case inspecting through Process Explorer, Paint.NET 3.5.11 loaded "C:\Windows\winsxs\amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.18120_none_2b25b14c71ebf230\GdiPlus.dll"
There are a few other folders with similar names in the winsxs folder. basically the application (Paint.NET) specifies in it's manifest what Library it needs, and Windows will load that particular version.
One possibility is that for whatever reason you have opened one of the files Paint.NET uses for storing thumbnails in Paint.NET. Though I doubt that is the case.
Another option is to reinstall the .NET Framework. Uninstall Paint.NET, Uninstall all versions of the .NET Framewrok you have installed and then install 3.5 (the version Paint.NET uses). and then reinstall Paint.NET and see if that helps.
I've already gone in and deleted the registry entry and subkeys, but it still crashes. I'm removing .NET and will install 3.5 tomorrow, along with paint.net. I'll let you know if anything changed or worked tomorrow, thanks for the reply!
P.S. Would it be a better idea to try installing paint.net 3.5.1 instead of the pre-release? Getting the pre-release was one of the last ideas I had before coming to this forum, so I don't know if I'm better off with a slightly more dated program, or if I'm fine with whichever.I uninstalled paint.net, got rid of the framework, and reinstalled paint.net (which installs the framework automatically), and it still turns up the same issue. Any other options?Other options I can think of are:
1.) Repair the Windows installation. *This should fix the issue, but may not.
( or )
2.) Install a clean install of Windows after first backing up your important data to an external drive. * This will definately fix the issue after a full clean install of OS and Programs clean.You may need an older ver. of .net installed...An sfc /scannow could help also.I'm probably not going to reinstall windows, I can possibly try an older .net version, and I've done sfc /scannow before, but I'll run it now anyway.
|