Jump to content
How to Install Plugins ×

PSFilterPdn (01-18-2024)


null54

Recommended Posts

On 12/15/2010 at 7:44 PM, null54 said:

This plug-in hosts Adobe® Photoshop®-compatible filter plug-ins under Paint.NET.

Many filters should run although some may have issues, both Flaming Pear's LunarCell as well as their Free Plugins  work correctly.

For instructions on installing 8bf filters see Installing 8bf filters.

 

This plugin is compatible with Paint.NET 5.0+.

 

Download

PSFilterPdn.zip

Place both PSFilterPdn.dll and PSFilterShim.exe in your Effects folder.

 

btn_donate_SM.gif

 

Effects->8bf Filter...

PSFilter-Pdn.png

 

Source Code

  https://github.com/0xC0000054/PSFilterPdn

not sure but followed directions and there is an error loading for 

PSFilterPdn.dll is registering as error while loading ... i cannot see this dialog box... under effects 
my get paint program reads up to date 

 


C:\Program Files\paint.net\Effects\PSFilterPdn.dll, version 2.0.1.0

System.IO.FileNotFoundException: Could not load file or assembly 'PaintDotNet.Core, Version=5.1.8421.12454, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
File name: 'PaintDotNet.Core, Version=5.1.8421.12454, Culture=neutral, PublicKeyToken=null'
 ---> System.IO.FileNotFoundException: Could not load file or assembly 'PaintDotNet.Core, Version=5.1.8421.12454, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
File name: 'PaintDotNet.Core, Version=5.1.8421.12454, Culture=neutral, PublicKeyToken=null'
   at System.Reflection.RuntimeAssembly.InternalLoad(AssemblyName assemblyName, StackCrawlMark& stackMark, AssemblyLoadContext assemblyLoadContext, RuntimeAssembly requestingAssembly, Boolean throwOnFileNotFound)
   at System.Runtime.Loader.AssemblyLoadContext.LoadFromAssemblyName(AssemblyName assemblyName)
   at PaintDotNet.Runtime.Loader.TrustedPlatformAssemblyResolver.Load(ILoadContext loadContext, AssemblyName assemblyName, String assemblyPath) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\TrustedPlatformAssemblyResolver.cs:line 129
   at PaintDotNet.Runtime.Loader.CombinedAssemblyLoader.Load(ILoadContext loadContext, AssemblyName assemblyName, String assemblyPath) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\CombinedAssemblyLoader.cs:line 51
   at PaintDotNet.Runtime.Loader.LoadContext.AssemblyLoadContextImpl.Load(AssemblyName assemblyName) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\LoadContext.cs:line 168
   at System.Runtime.Loader.AssemblyLoadContext.ResolveUsingLoad(AssemblyName assemblyName)
   at System.Runtime.Loader.AssemblyLoadContext.Resolve(IntPtr gchManagedAssemblyLoadContext, AssemblyName assemblyName)

System.IO.FileNotFoundException: Could not load file or assembly 'PaintDotNet.ComponentModel, Version=5.1.8421.12454, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
File name: 'PaintDotNet.ComponentModel, Version=5.1.8421.12454, Culture=neutral, PublicKeyToken=null'
 ---> System.IO.FileNotFoundException: Could not load file or assembly 'PaintDotNet.ComponentModel, Version=5.1.8421.12454, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
File name: 'PaintDotNet.ComponentModel, Version=5.1.8421.12454, Culture=neutral, PublicKeyToken=null'
   at System.Reflection.RuntimeAssembly.InternalLoad(AssemblyName assemblyName, StackCrawlMark& stackMark, AssemblyLoadContext assemblyLoadContext, RuntimeAssembly requestingAssembly, Boolean throwOnFileNotFound)
   at System.Runtime.Loader.AssemblyLoadContext.LoadFromAssemblyName(AssemblyName assemblyName)
   at PaintDotNet.Runtime.Loader.TrustedPlatformAssemblyResolver.Load(ILoadContext loadContext, AssemblyName assemblyName, String assemblyPath) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\TrustedPlatformAssemblyResolver.cs:line 129
   at PaintDotNet.Runtime.Loader.CombinedAssemblyLoader.Load(ILoadContext loadContext, AssemblyName assemblyName, String assemblyPath) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\CombinedAssemblyLoader.cs:line 51
   at PaintDotNet.Runtime.Loader.LoadContext.AssemblyLoadContextImpl.Load(AssemblyName assemblyName) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\LoadContext.cs:line 168
   at System.Runtime.Loader.AssemblyLoadContext.ResolveUsingLoad(AssemblyName assemblyName)
   at System.Runtime.Loader.AssemblyLoadContext.Resolve(IntPtr gchManagedAssemblyLoadContext, AssemblyName assemblyName)

System.IO.FileNotFoundException: Could not load file or assembly 'PaintDotNet.Effects.Core, Version=5.1.8421.12454, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
File name: 'PaintDotNet.Effects.Core, Version=5.1.8421.12454, Culture=neutral, PublicKeyToken=null'
 ---> System.IO.FileNotFoundException: Could not load file or assembly 'PaintDotNet.Effects.Core, Version=5.1.8421.12454, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
File name: 'PaintDotNet.Effects.Core, Version=5.1.8421.12454, Culture=neutral, PublicKeyToken=null'
   at System.Reflection.RuntimeAssembly.InternalLoad(AssemblyName assemblyName, StackCrawlMark& stackMark, AssemblyLoadContext assemblyLoadContext, RuntimeAssembly requestingAssembly, Boolean throwOnFileNotFound)
   at System.Runtime.Loader.AssemblyLoadContext.LoadFromAssemblyName(AssemblyName assemblyName)
   at PaintDotNet.Runtime.Loader.TrustedPlatformAssemblyResolver.Load(ILoadContext loadContext, AssemblyName assemblyName, String assemblyPath) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\TrustedPlatformAssemblyResolver.cs:line 129
   at PaintDotNet.Runtime.Loader.CombinedAssemblyLoader.Load(ILoadContext loadContext, AssemblyName assemblyName, String assemblyPath) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\CombinedAssemblyLoader.cs:line 51
   at PaintDotNet.Runtime.Loader.LoadContext.AssemblyLoadContextImpl.Load(AssemblyName assemblyName) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\LoadContext.cs:line 168
   at System.Runtime.Loader.AssemblyLoadContext.ResolveUsingLoad(AssemblyName assemblyName)
   at System.Runtime.Loader.AssemblyLoadContext.Resolve(IntPtr gchManagedAssemblyLoadContext, AssemblyName assemblyName)

System.IO.FileNotFoundException: Could not load file or assembly 'PaintDotNet.Windows, Version=5.1.8421.12454, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
File name: 'PaintDotNet.Windows, Version=5.1.8421.12454, Culture=neutral, PublicKeyToken=null'
 ---> System.IO.FileNotFoundException: Could not load file or assembly 'PaintDotNet.Windows, Version=5.1.8421.12454, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
File name: 'PaintDotNet.Windows, Version=5.1.8421.12454, Culture=neutral, PublicKeyToken=null'
   at System.Reflection.RuntimeAssembly.InternalLoad(AssemblyName assemblyName, StackCrawlMark& stackMark, AssemblyLoadContext assemblyLoadContext, RuntimeAssembly requestingAssembly, Boolean throwOnFileNotFound)
   at System.Runtime.Loader.AssemblyLoadContext.LoadFromAssemblyName(AssemblyName assemblyName)
   at PaintDotNet.Runtime.Loader.TrustedPlatformAssemblyResolver.Load(ILoadContext loadContext, AssemblyName assemblyName, String assemblyPath) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\TrustedPlatformAssemblyResolver.cs:line 129
   at PaintDotNet.Runtime.Loader.CombinedAssemblyLoader.Load(ILoadContext loadContext, AssemblyName assemblyName, String assemblyPath) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\CombinedAssemblyLoader.cs:line 51
   at PaintDotNet.Runtime.Loader.LoadContext.AssemblyLoadContextImpl.Load(AssemblyName assemblyName) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\LoadContext.cs:line 168
   at System.Runtime.Loader.AssemblyLoadContext.ResolveUsingLoad(AssemblyName assemblyName)
   at System.Runtime.Loader.AssemblyLoadContext.Resolve(IntPtr gchManagedAssemblyLoadContext, AssemblyName assemblyName)
 

 

Link to comment
Share on other sites

20 minutes ago, badassebs said:

PSFilterPdn.dll is registering as error while loading ... i cannot see this dialog box... under effects 

 

You need to be using Paint.NET version 5.0.1 to run the plugin.

 

Also, I updated the download link in the first post to point to version 2.0.2.

PdnSig.png

Plugin Pack | PSFilterPdn | Content Aware Fill | G'MICPaint Shop Pro Filetype | RAW Filetype | WebP Filetype

The small increase in performance you get coding in C++ over C# is hardly enough to offset the headache of coding in the C++ language. ~BoltBait

 

Link to comment
Share on other sites

  • null54 changed the title to PSFilterPdn (10-08-2023)

Release version 2.0.3.

Changes:

  • Fixed the issue with the color button in the Aldus Gallery Effects Neon Edges filter.
  • Changed the plugin icon and added an icon for 125% DPI.
  • Improved performance when running 32-bit filters.
  • Allow plugins to read the IPTC caption.
  • Use WIC and Direct2D for the filter preview rendering.
  • The transparency checkerboard in the filter preview now matches Paint.NET.

Note that the plugin is now installed into is own sub-folder within the Paint.NET Effects folder.

  • Like 2
  • Upvote 1

PdnSig.png

Plugin Pack | PSFilterPdn | Content Aware Fill | G'MICPaint Shop Pro Filetype | RAW Filetype | WebP Filetype

The small increase in performance you get coding in C++ over C# is hardly enough to offset the headache of coding in the C++ language. ~BoltBait

 

Link to comment
Share on other sites

  • null54 changed the title to PSFilterPdn (10-09-2023)

I have no idea what my old version was numbered, but after update the plugin would crash paint.net every time, whether I had .8BF files in my effects directory or not.

 

I apparently guessed correctly that it was some kind of saved settings mismatch and deleting "C:\Users\nnnnn\Documents\paint.net User Files\PSFilterPdn.xml" resolved the issue, but this might be a little confusing if someone doesn't know to look for that file.

 

System info and exception received:

Quote

Application version: paint.net 5.0.10 (Stable 5.10.8674.32967)
Time of crash: 9.10.2023 17:29:41
Application uptime: 00:00:04.8448557
Application state: Running 
Working set: 310 816 KiB
Handles and threads: 1621 handles, 139 threads, 187 gdi, 254 user
Install type: Classic
Application directory: C:\Program Files\paint.net
Current directory: C:\Program Files\paint.net
Install directory: C:\Program Files\paint.net
OS Version: Windows 11 Home 10.0.22621.0 x64
.NET version: .NET 7.0.11 x64
Processor: "13th Gen Intel(R) Core(TM) i7-13700K" @ ~3418MHz (16C/24T, SSE, SSE2, SSE3, SSSE3, SSE4_1, SSE4_2, AVX, AVX2)
Memory: 32 509 MB physical (18 684 MB free), 133 948 174 MB virtual free, 34 557 MB pagefile (14 560 MB free)
Video card: NVIDIA GeForce RTX 3080 (fl:12.1, v:10DE, d:2216, r:A1), Microsoft Basic Render Driver (fl:12.1, v:1414, d:8C, r:0)
Hardware acceleration: True (default: True) (rendering: 🚀 Performance (NVIDIA GeForce RTX 3080))
Remote session: no
Pointers: none
UI animations: True
UI DPI: 120 dpi (1.25x scale)
UI theme: VisualStyleCategory=Aero, EffectiveTheme=Aero, DWM=yes, AeroColorScheme=Dark, ThemeFileName=Aero.msstyles
Updates: True, 9.10.2023
Locale: pdnr.c: en-US, hklm: en-US, hkcu: en-US, cc: fi-FI, cuic: en-US
Flags: EnablePointerInput=False

Exception details:
System.ArgumentNullException: Value cannot be null. (Parameter 'collection')
   at System.Collections.Generic.List`1.InsertRange(Int32 index, IEnumerable`1 collection)
   at PSFilterPdn.PsFilterPdnConfigDialog.OnShown(EventArgs e) in D:\Dev_projects\PSFilterPdn\src\PsFilterPdnConfigDialog.cs:line 1559
   at System.Windows.Forms.Control.InvokeMarshaledCallbackHelper(Object obj)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Windows.Forms.Control.InvokeMarshaledCallbacks()
 

 

Link to comment
Share on other sites

Thank you @null54 for your efforts. Now it is possible to use the Neon Glow filter.

I edited the tutorial Applying effects from Photoshop Filters menu in paint.net due to the release of version 2.0.4.

 

Note: As before, for the correct to use of some PS filters, you need to install the PLUGIN.DLL file to the PSFilterPdn folder.

  • Like 1
Link to comment
Share on other sites

37 minutes ago, ReMake said:

Note: As before, for the correct to use of some PS filters, you need to install the PLUGIN.DLL file to the PSFilterPdn folder.

 

Hi @ReMake I am having trouble with a handful of these filters opening with 2.0.4, perhaps because of the PLUGIN.DLL you speak of above.  Where will I find this .DLL please :)     It's OK @ReMake I went to your tutorial and found the answer there :) 

 

 

  • Upvote 1

30b8T8B.gif

How I made Jennifer & Halle in Paint.net

My Gallery | My Deviant Art

"Rescuing one animal may not change the world, but for that animal their world is changed forever!" anon.

 
Link to comment
Share on other sites

9 hours ago, frio said:

I have no idea what my old version was numbered, but after update the plugin would crash paint.net every time, whether I had .8BF files in my effects directory or not.

 

I fixed the crash, but I have no idea why that value was null.

 

Release version 2.0.5.

Changes:

 

Fixed a crash when loading the plugin settings.

  • Like 1
  • Thanks 2
  • Upvote 1

PdnSig.png

Plugin Pack | PSFilterPdn | Content Aware Fill | G'MICPaint Shop Pro Filetype | RAW Filetype | WebP Filetype

The small increase in performance you get coding in C++ over C# is hardly enough to offset the headache of coding in the C++ language. ~BoltBait

 

Link to comment
Share on other sites

Olay: Nesne silindi (Deleted)
Kullanıcı: *******-*******\****
Kullanıcı tipi: Etkin kullanıcı
Uygulama adı: explorer.exe
Uygulama yolu: C:\Windows
Bileşen: Dosya Antivirüsü
Sonuç açıklaması: Silindi (Removed)
Tür: Truva atı
Ad: HEUR:Trojan-PSW.Win32.Stealer.gen
Doğruluk: Sezgisel analiz
Tehdit düzeyi: Yüksek (High)
Nesne türü: Dosya
Nesne adı: PSFilterShim.exe
Nesne yolu: C:\Program Files\paint.net\Effects\PSFilterPdn
Bir nesnenin MD5'i: 00B2E8173CF1922250C159D0045DAFEE

Edited by user.by
Link to comment
Share on other sites

44 minutes ago, Rick Brewster said:

@user.by, You need to use English

Event: Object was deleted
User: *******-*******\****
User type: Active user
Application name: explorer.exe
Application path: C:\Windows
Component: File Antivirus
Result description: Removed
Type: Trojan horse
Name: HEUR:Trojan-PSW.Win32.Stealer.gen
Accuracy: Intuitive analysis
Threat level: High
Object type: File
Object name: PSFilterShim.exe
Object path: C:\Program Files\paint.net\Effects\PSFilterPdn
MD5 of an object: 00B2E8173CF1922250C159D0045DAFEE

 

Report by Kasperky AV

Edited by user.by
Link to comment
Share on other sites

23 minutes ago, Pixey said:

@user.by I think your anti virus must be overly sensitive.

 

I downloaded the same thing and had no problem.

 

shim.png

Not overlay, it's normal settings, and i also updated too for false alarm. I back to 2.0.2.0

(I know it's not a virus or trojan, but KAV dont allow to it for work.)

Edited by user.by
Link to comment
Share on other sites

On 10/9/2023 at 7:42 AM, frio said:

I apparently guessed correctly that it was some kind of saved settings mismatch and deleting "C:\Users\nnnnn\Documents\paint.net User Files\PSFilterPdn.xml" resolved the issue, but this might be a little confusing if someone doesn't know to look for that file.

@null54 Hi there buddy

 

Instead of posting a bug - I found the answer in the thread. What happened was your new installation locks the first directory in PSFilterPdn dialogue screen to Paint.Net/Effects because of that .xml file. It cannot be deselected. Can you imagine how long is took to load all my plugins in effects and its subdirectories? On a lesser computer I am sure it would crash. I saw you suggested searching your folder and below. All my Photoshop filters are in C:\Docunents\PhotshopFilters.

 

So by deleting that XML file unlocked the ability to change the searching directories. Issue resolved :)

Thanks @frio

 

 

PaintNetSignature.png.6bca4e07f5d738b2436f83d0ce1b876f.png

Link to comment
Share on other sites

11 hours ago, AndrewDavid said:

What happened was your new installation locks the first directory in PSFilterPdn dialogue screen to Paint.Net/Effects because of that .xml file.

 

The Paint.NET Effects folder is always added to the search list, this occurs before it even tries to load the other search directories from that XML file.

It also always searches the subdirectories of the Effects folder for 8bf filters.

 

11 hours ago, AndrewDavid said:

Can you imagine how long is took to load all my plugins in effects and its subdirectories? On a lesser computer I am sure it would crash.

 

I don't have very many plugins installed in my Paint.NET Effects folder, but I do have a few Photoshop filters and shortcuts to Photoshop filters that are included as part of the Effects folder search.

I doubt it would crash, it would just take a bit longer.

 

The Paint.NET 5.0 versions of PSFilterPdn should be much faster with the directory searching than version 1.0.8.2 and earlier.

I will have to investigate to see if there is anything I can do to make it faster with folders that contain a large number of subdirectories/files.

PdnSig.png

Plugin Pack | PSFilterPdn | Content Aware Fill | G'MICPaint Shop Pro Filetype | RAW Filetype | WebP Filetype

The small increase in performance you get coding in C++ over C# is hardly enough to offset the headache of coding in the C++ language. ~BoltBait

 

Link to comment
Share on other sites

Hi, everything up to date, but when I run some of the .8bf filters, I am getting these errors:

 

System.ComponentModel.Win32Exception (126): The specified module could not be found.
   at PSFilterLoad.PSApi.PluginModule..ctor(String fileName, String entryPoint)
   at PSFilterLoad.PSApi.LoadPsFilter.LoadFilter(PluginData data)
   at PSFilterLoad.PSApi.LoadPsFilter.RunPlugin(PluginData data, Boolean showAbout)
   at PSFilterShim.PSFilterShimWindow.RunFilter(IWICFactory imagingFactory, IDirect2DFactory direct2DFactory)

 

The PSFilterPdn folder is here: C:\Program Files\paint.net\Effects\PSFilterPdn

And my filters are here: C:\Program Files\paint.net\Effects\Filters

 

Any ideas? Or have I downloaded the wrong setup file?

 

Brian

 

Link to comment
Share on other sites

On 10/9/2023 at 2:31 PM, ReMake said:

Note: As before, for the correct to use of some PS filters, you need to install the PLUGIN.DLL file to the PSFilterPdn folder.

 

@BDP you can find the said .dll on the page found here bottom left of page, then put it into the PSDFilter folder.

30b8T8B.gif

How I made Jennifer & Halle in Paint.net

My Gallery | My Deviant Art

"Rescuing one animal may not change the world, but for that animal their world is changed forever!" anon.

 
Link to comment
Share on other sites

Pixey,

 

Been there, done that! Maybe the .8bf files are not compatible, anyway. If anyone could share a site where I can find compatible 8bf files, that would be welcome. Some of mine have come from my IrfanView 64-bit installation

 

Brian

 

Link to comment
Share on other sites

Another program-crashing bug with the new version. Using the xNormal (https://xnormal.net/) filters are very unpredictable: sometimes they work normally, but on other images/layers they give nonsensical errors. I specifically used the Dilation filter, though *all* the xNormal suite filters give the same errors despite having very different needs and uses.

 

On a new, blank white image, I get this:

Quote

Exception:

System.NotSupportedException: The source and destination images must have the same size, format and stride.
   at PSFilterLoad.PSApi.LoadPsFilter.CopySourceToDestination() in D:\Dev_projects\PSFilterPdn\src\PSApi\LoadPsFilter.cs:line 1076
   at PSFilterLoad.PSApi.LoadPsFilter.RunPlugin(PluginData data, Boolean showAbout) in D:\Dev_projects\PSFilterPdn\src\PSApi\LoadPsFilter.cs:line 1128
   at PSFilterPdn.PsFilterPdnConfigDialog.RunFilterThreadProc(Object state) in D:\Dev_projects\PSFilterPdn\src\PsFilterPdnConfigDialog.cs:line 943
 

 

These filters don't use multiple images/layers to begin with.

 

Make a blank new image, select all, then delete everything, and I get this: "The filter does not support processing empty layers", fair enough, except that has never been an issue in the old version. Draw a black squiggle in the middle of the image, then try to run the filter again, and it keeps claiming the layer is empty when it very obviously is not. Draw a black squiggle that crosses the first row of the image, and it returns to the first error message.

 

If I *do* manage to run the filter successfully (I've yet to pinpoint when it agrees to work) and then run repeat filter with control-F on some other image/layer that it would give the above errors for, paint.net crashes with the following:

Quote

Exception details:
System.InvalidOperationException: Cross-thread operation not valid: Control '' accessed from a thread other than the thread it was created on.
   at System.Windows.Forms.Control.get_Handle()
   at Interop.User32.GetWindowLong(IHandle hWnd, GWL nIndex)
   at System.Windows.Forms.Application.ModalApplicationContext.DisableThreadWindows(Boolean disable, Boolean onlyWinForms)
   at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
   at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
--- End of stack trace from previous location ---
   at System.Windows.Forms.Control.MarshaledInvoke(Control caller, Delegate method, Object[] args, Boolean synchronous)
   at System.Windows.Forms.Control.Invoke(Delegate method, Object[] args)
   at System.Windows.Forms.Application.ModalApplicationContext.DisableThreadWindows(Boolean disable, Boolean onlyWinForms)
   at System.Windows.Forms.Application.ThreadContext.BeginModalMessageLoop(ApplicationContext context)
   at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(msoloop reason, ApplicationContext context)
   at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(msoloop reason, ApplicationContext context)
   at System.Windows.Forms.Form.ShowDialog(IWin32Window owner)
   at PaintDotNet.Dialogs.ExceptionDialog.ShowErrorDialog(IWin32Window owner, String message, String detailsText) in D:\src\pdn\src\PaintDotNet\Dialogs\ExceptionDialog.cs:line 73
   at PSFilterPdn.PSFilterPdnEffect.RunRepeatFilter(PSFilterPdnConfigToken token, IWin32Window window) in D:\Dev_projects\PSFilterPdn\src\PSFilterPdn.cs:line 261
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
 

 

To be certain, I dug out my old PSFilterPdN from the trash can and tried the filters with the same images without exceptions or crashes.

Link to comment
Share on other sites

1 minute ago, frio said:

System.NotSupportedException: The source and destination images must have the same size, format and stride.

@null54 Perhaps this can be fixed by using RegionPtr<T>.CopyTo()? The T can be any “unmanaged” type, not just a color/pixel. It handles mismatched stride just fine.

The Paint.NET Blog: https://blog.getpaint.net/

Donations are always appreciated! https://www.getpaint.net/donate.html

forumSig_bmwE60.jpg

Link to comment
Share on other sites

  • null54 changed the title to PSFilterPdn (10-12-2023)

Release version 2.0.6.

Changes:

  • Fixed a bug when checking if the layer is blank.
  • Fixed a crash if the source and destination image use a different stride.
  • Fixed a crash when showing error messages.

@frio All of those issues should be fixed.

 

10 hours ago, Rick Brewster said:

Perhaps this can be fixed by using RegionPtr<T>.CopyTo()?

 

I can't use RegionPtr<T> because PSFilterShim does not depend on Paint.NET.

I fixed the issue by copying one row at a time when the stride doesn't match.

Although, I do not know why the stride would not match in this case as both images are IBitmap<ColorBgra32> and the same size.

  • Like 1
  • Thanks 1
  • Hooray 1

PdnSig.png

Plugin Pack | PSFilterPdn | Content Aware Fill | G'MICPaint Shop Pro Filetype | RAW Filetype | WebP Filetype

The small increase in performance you get coding in C++ over C# is hardly enough to offset the headache of coding in the C++ language. ~BoltBait

 

Link to comment
Share on other sites

Thank you for the update.

I have Paint.net 5.0.10 and get the following plugin error:

 

C:\Program Files\paint.net\Effects\PSFilterPdn\PSFilterPdn.dll, version 2.0.6.0

System.IO.FileNotFoundException: Could not load file or assembly 'PaintDotNet.Windows, Version=5.11.8685.3093, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
File name: 'PaintDotNet.Windows, Version=5.11.8685.3093, Culture=neutral, PublicKeyToken=null'
 ---> System.IO.FileNotFoundException: Could not load file or assembly 'PaintDotNet.Windows, Version=5.11.8685.3093, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
File name: 'PaintDotNet.Windows, Version=5.11.8685.3093, Culture=neutral, PublicKeyToken=null'
   at System.Reflection.RuntimeAssembly.InternalLoad(AssemblyName assemblyName, StackCrawlMark& stackMark, AssemblyLoadContext assemblyLoadContext, RuntimeAssembly requestingAssembly, Boolean throwOnFileNotFound)
   at System.Runtime.Loader.AssemblyLoadContext.LoadFromAssemblyName(AssemblyName assemblyName)
   at PaintDotNet.Runtime.Loader.TrustedPlatformAssemblyResolver.Load(ILoadContext loadContext, AssemblyName assemblyName, String assemblyPath) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\TrustedPlatformAssemblyResolver.cs:line 142
   at PaintDotNet.Runtime.Loader.CombinedAssemblyLoader.Load(ILoadContext loadContext, AssemblyName assemblyName, String assemblyPath) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\CombinedAssemblyLoader.cs:line 51
   at PaintDotNet.Runtime.Loader.LoadContext.AssemblyLoadContextImpl.Load(AssemblyName assemblyName) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\LoadContext.cs:line 168
   at System.Runtime.Loader.AssemblyLoadContext.ResolveUsingLoad(AssemblyName assemblyName)
   at System.Runtime.Loader.AssemblyLoadContext.Resolve(IntPtr gchManagedAssemblyLoadContext, AssemblyName assemblyName)

System.IO.FileNotFoundException: Could not load file or assembly 'PaintDotNet.Primitives, Version=5.11.8685.3093, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
File name: 'PaintDotNet.Primitives, Version=5.11.8685.3093, Culture=neutral, PublicKeyToken=null'
 ---> System.IO.FileNotFoundException: Could not load file or assembly 'PaintDotNet.Primitives, Version=5.11.8685.3093, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
File name: 'PaintDotNet.Primitives, Version=5.11.8685.3093, Culture=neutral, PublicKeyToken=null'
   at System.Reflection.RuntimeAssembly.InternalLoad(AssemblyName assemblyName, StackCrawlMark& stackMark, AssemblyLoadContext assemblyLoadContext, RuntimeAssembly requestingAssembly, Boolean throwOnFileNotFound)
   at System.Runtime.Loader.AssemblyLoadContext.LoadFromAssemblyName(AssemblyName assemblyName)
   at PaintDotNet.Runtime.Loader.TrustedPlatformAssemblyResolver.Load(ILoadContext loadContext, AssemblyName assemblyName, String assemblyPath) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\TrustedPlatformAssemblyResolver.cs:line 142
   at PaintDotNet.Runtime.Loader.CombinedAssemblyLoader.Load(ILoadContext loadContext, AssemblyName assemblyName, String assemblyPath) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\CombinedAssemblyLoader.cs:line 51
   at PaintDotNet.Runtime.Loader.LoadContext.AssemblyLoadContextImpl.Load(AssemblyName assemblyName) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\LoadContext.cs:line 168
   at System.Runtime.Loader.AssemblyLoadContext.ResolveUsingLoad(AssemblyName assemblyName)
   at System.Runtime.Loader.AssemblyLoadContext.Resolve(IntPtr gchManagedAssemblyLoadContext, AssemblyName assemblyName)

System.IO.FileNotFoundException: Could not load file or assembly 'PaintDotNet.ComponentModel, Version=5.11.8685.3093, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
File name: 'PaintDotNet.ComponentModel, Version=5.11.8685.3093, Culture=neutral, PublicKeyToken=null'
 ---> System.IO.FileNotFoundException: Could not load file or assembly 'PaintDotNet.ComponentModel, Version=5.11.8685.3093, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
File name: 'PaintDotNet.ComponentModel, Version=5.11.8685.3093, Culture=neutral, PublicKeyToken=null'
   at System.Reflection.RuntimeAssembly.InternalLoad(AssemblyName assemblyName, StackCrawlMark& stackMark, AssemblyLoadContext assemblyLoadContext, RuntimeAssembly requestingAssembly, Boolean throwOnFileNotFound)
   at System.Runtime.Loader.AssemblyLoadContext.LoadFromAssemblyName(AssemblyName assemblyName)
   at PaintDotNet.Runtime.Loader.TrustedPlatformAssemblyResolver.Load(ILoadContext loadContext, AssemblyName assemblyName, String assemblyPath) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\TrustedPlatformAssemblyResolver.cs:line 142
   at PaintDotNet.Runtime.Loader.CombinedAssemblyLoader.Load(ILoadContext loadContext, AssemblyName assemblyName, String assemblyPath) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\CombinedAssemblyLoader.cs:line 51
   at PaintDotNet.Runtime.Loader.LoadContext.AssemblyLoadContextImpl.Load(AssemblyName assemblyName) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\LoadContext.cs:line 168
   at System.Runtime.Loader.AssemblyLoadContext.ResolveUsingLoad(AssemblyName assemblyName)
   at System.Runtime.Loader.AssemblyLoadContext.Resolve(IntPtr gchManagedAssemblyLoadContext, AssemblyName assemblyName)

System.IO.FileNotFoundException: Could not load file or assembly 'PaintDotNet.Core, Version=5.11.8685.3093, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
File name: 'PaintDotNet.Core, Version=5.11.8685.3093, Culture=neutral, PublicKeyToken=null'
 ---> System.IO.FileNotFoundException: Could not load file or assembly 'PaintDotNet.Core, Version=5.11.8685.3093, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
File name: 'PaintDotNet.Core, Version=5.11.8685.3093, Culture=neutral, PublicKeyToken=null'
   at System.Reflection.RuntimeAssembly.InternalLoad(AssemblyName assemblyName, StackCrawlMark& stackMark, AssemblyLoadContext assemblyLoadContext, RuntimeAssembly requestingAssembly, Boolean throwOnFileNotFound)
   at System.Runtime.Loader.AssemblyLoadContext.LoadFromAssemblyName(AssemblyName assemblyName)
   at PaintDotNet.Runtime.Loader.TrustedPlatformAssemblyResolver.Load(ILoadContext loadContext, AssemblyName assemblyName, String assemblyPath) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\TrustedPlatformAssemblyResolver.cs:line 142
   at PaintDotNet.Runtime.Loader.CombinedAssemblyLoader.Load(ILoadContext loadContext, AssemblyName assemblyName, String assemblyPath) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\CombinedAssemblyLoader.cs:line 51
   at PaintDotNet.Runtime.Loader.LoadContext.AssemblyLoadContextImpl.Load(AssemblyName assemblyName) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\LoadContext.cs:line 168
   at System.Runtime.Loader.AssemblyLoadContext.ResolveUsingLoad(AssemblyName assemblyName)
   at System.Runtime.Loader.AssemblyLoadContext.Resolve(IntPtr gchManagedAssemblyLoadContext, AssemblyName assemblyName)

System.IO.FileNotFoundException: Could not load file or assembly 'PaintDotNet.Effects.Core, Version=5.11.8685.3093, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
File name: 'PaintDotNet.Effects.Core, Version=5.11.8685.3093, Culture=neutral, PublicKeyToken=null'
 ---> System.IO.FileNotFoundException: Could not load file or assembly 'PaintDotNet.Effects.Core, Version=5.11.8685.3093, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
File name: 'PaintDotNet.Effects.Core, Version=5.11.8685.3093, Culture=neutral, PublicKeyToken=null'
   at System.Reflection.RuntimeAssembly.InternalLoad(AssemblyName assemblyName, StackCrawlMark& stackMark, AssemblyLoadContext assemblyLoadContext, RuntimeAssembly requestingAssembly, Boolean throwOnFileNotFound)
   at System.Runtime.Loader.AssemblyLoadContext.LoadFromAssemblyName(AssemblyName assemblyName)
   at PaintDotNet.Runtime.Loader.TrustedPlatformAssemblyResolver.Load(ILoadContext loadContext, AssemblyName assemblyName, String assemblyPath) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\TrustedPlatformAssemblyResolver.cs:line 142
   at PaintDotNet.Runtime.Loader.CombinedAssemblyLoader.Load(ILoadContext loadContext, AssemblyName assemblyName, String assemblyPath) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\CombinedAssemblyLoader.cs:line 51
   at PaintDotNet.Runtime.Loader.LoadContext.AssemblyLoadContextImpl.Load(AssemblyName assemblyName) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\LoadContext.cs:line 168
   at System.Runtime.Loader.AssemblyLoadContext.ResolveUsingLoad(AssemblyName assemblyName)
   at System.Runtime.Loader.AssemblyLoadContext.Resolve(IntPtr gchManagedAssemblyLoadContext, AssemblyName assemblyName)
 

Link to comment
Share on other sites

13 minutes ago, Lou said:

I have Paint.net 5.0.10 and get the following plugin error:

 

You need to update to Paint.NET 5.0.11.

PdnSig.png

Plugin Pack | PSFilterPdn | Content Aware Fill | G'MICPaint Shop Pro Filetype | RAW Filetype | WebP Filetype

The small increase in performance you get coding in C++ over C# is hardly enough to offset the headache of coding in the C++ language. ~BoltBait

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...