Rhino 8.12 Plugin Error

Hi Team,

Issue
One of our team members is seeing the following plugin error in Rhino8 and we would like to understand why this might be happening.

About the plugin
Out plugin is targeting .Net Framework 4.8 and Rhino 8 runs under .Net Core 7.20. So we are not entirely surprised by seeing this error. But here’s what surprise us the most. out of three machines we tested this on, this error is happening on only one of the machines.

Side Note:We should should also share that we have other plugin that is also targeting .Net Framework 4.8 and it works fine in Rhino 8 running under .Net Core 7.20.

System Info
The system information for the three machines we tried this on.

System-1: No plugin error

Rhino 8 SR12 2024-10-8 (Rhino 8, 8.12.24282.07001, Git hash:master @ 2f42167325d83e0da0f3fe08e796c2b26e602bc5)
License type: Commercial, build 2024-10-08
License details: Cloud Zoo

Windows 11 (10.0.22631 SR0.0) or greater (Physical RAM: 32GB)
.NET 7.0.20

Computer platform: LAPTOP  - Plugged in [98% battery remaining]

Non-hybrid graphics configuration.
  Primary display and OpenGL: NVIDIA RTX A4000 Laptop GPU (NVidia) Memory: 8GB, Driver date: 7-23-2024 (M-D-Y). OpenGL Ver: 4.6.0 NVIDIA 560.76
    > Integrated accelerated graphics device with 4 adapter port(s)
        - Windows Main Display is laptop's integrated screen or built-in port
        - Secondary monitor attached to adapter port #1
  Primary OpenGL: NVIDIA RTX A4000 Laptop GPU (NVidia) Memory: 8GB, Driver date: 7-23-2024 (M-D-Y). OpenGL Ver: 4.6.0 NVIDIA 560.76
    > Integrated accelerated graphics device with 4 adapter port(s)
        - Windows Main Display is laptop's integrated screen or built-in port
        - Secondary monitor attached to adapter port #1

OpenGL Settings
  Safe mode: Off
  Use accelerated hardware modes: On
  Redraw scene when viewports are exposed: On
  Graphics level being used: OpenGL 4.6 (primary GPU's maximum)
  
  Anti-alias mode: 4x
  Mip Map Filtering: Linear
  Anisotropic Filtering Mode: High
  
  Vendor Name: NVIDIA Corporation
  Render version: 4.6
  Shading Language: 4.60 NVIDIA
  Driver Date: 7-23-2024
  Driver Version: 32.0.15.6076
  Maximum Texture size: 32768 x 32768
  Z-Buffer depth: 24 bits
  Maximum Viewport size: 32768 x 32768
  Total Video Memory: 8 GB

Rhino plugins that do not ship with Rhino
  C:\Program Files\Common Files\McNeel\Rhinoceros\8.0\Plug-ins\WB_RHTrack (f1b547e5-c3af-478d-84ee-6804536a8bb2)\1.0.7346.25956\WB_RHTrack.rhp	"WB_RHTrack"	1.0.7346.25956
  C:\Program Files\Chaos Group\V-Ray\V-Ray for Rhinoceros\V8\VRayForRhino.rhp	"V-Ray for Rhino"	
  C:\ProgramData\McNeel\Rhinoceros\8.0\Plug-ins\Datasmith Rhino Exporter (d1fdc795-b334-4933-b680-088119cdc6bb)\DatasmithRhino8.rhp	"Datasmith Exporter"	5.4.3.0
  C:\Program Files\Enscape\Enscape.Rhino.Plugin-net48\Enscape.Rhino8.Plugin.dll	"Enscape.Rhino8.Plugin"	0.0.24138.1238
  C:\Program Files\Common Files\McNeel\Rhinoceros\8.0\Plug-ins\ElefrontProperties (5db9285b-b408-41e2-b815-ed6ad84fd4a9)\1.0.0.0\ElefrontProperties.rhp	"ElefrontProperties"	1.0.0.0
  C:\Users\nycdvc\AppData\Roaming\McNeel\Rhinoceros\packages\8.0\WombatRhino\1.0.5.17\WombatRhino.rhp	"WombatRhino"	1.0.5.17
  C:\ProgramData\McNeel\Rhinoceros\packages\8.0\LadybugTools\1.38.230\Ladybug.RH.Loader.rhp	"Ladybug.RH.Loader"	1.38.230.0
  C:\ProgramData\McNeel\Rhinoceros\packages\8.0\Pollination\1.52.19\Pollination.RH.Loader.rhp	"Pollination.RH.Loader"	1.52.19.0

Rhino plugins that ship with Rhino
  C:\Program Files\Rhino 8\Plug-ins\Commands.rhp	"Commands"	8.12.24282.7001
  C:\Program Files\Rhino 8\Plug-ins\rdk.rhp	"Renderer Development Kit"	
  C:\Users\nycdvc\AppData\Roaming\McNeel\Rhinoceros\packages\8.0\PanelingTools\2024.8.20.677\PanelingTools.rhp	"PanelingTools"	
  C:\Program Files\Rhino 8\Plug-ins\RhinoRenderCycles.rhp	"Rhino Render"	8.12.24282.7001
  C:\Program Files\Rhino 8\Plug-ins\rdk_etoui.rhp	"RDK_EtoUI"	8.12.24282.7001
  C:\Program Files\Rhino 8\Plug-ins\NamedSnapshots.rhp	"Snapshots"	
  C:\Program Files\Rhino 8\Plug-ins\MeshCommands.rhp	"MeshCommands"	8.12.24282.7001
  C:\Program Files\Rhino 8\Plug-ins\IronPython\RhinoDLR_Python.rhp	"IronPython"	8.12.24282.7001
  C:\Program Files\Rhino 8\Plug-ins\RhinoCycles.rhp	"RhinoCycles"	8.12.24282.7001
  C:\Program Files\Rhino 8\Plug-ins\Toolbars\Toolbars.rhp	"Toolbars"	8.12.24282.7001
  C:\Program Files\Rhino 8\Plug-ins\3dxrhino.rhp	"3Dconnexion 3D Mouse"	
  C:\Program Files\Rhino 8\Plug-ins\Displacement.rhp	"Displacement"	
  C:\Program Files\Rhino 8\Plug-ins\SectionTools.rhp	"SectionTools"	

System-2: No plugin error

Rhino 8 SR12 2024-10-8 (Rhino 8, 8.12.24282.07001, Git hash:master @ 2f42167325d83e0da0f3fe08e796c2b26e602bc5)
License type: Commercial, build 2024-10-08
License details: Cloud Zoo
 
Windows 11 (10.0.22631 SR0.0) or greater (Physical RAM: 32GB)
.NET 7.0.20
 
Computer platform: LAPTOP  - Plugged in [97% battery remaining]
 
Non-hybrid graphics configuration.
  Primary display and OpenGL: NVIDIA Quadro RTX 3000 (NVidia) Memory: 6GB, Driver date: 6-25-2024 (M-D-Y). OpenGL Ver: 4.6.0 NVIDIA 556.12
> Integrated accelerated graphics device with 4 adapter port(s)
        - Secondary monitor is laptop's integrated screen or built-in port
        - Windows Main Display attached to adapter port #1
  Primary OpenGL: NVIDIA Quadro RTX 3000 (NVidia) Memory: 6GB, Driver date: 6-25-2024 (M-D-Y). OpenGL Ver: 4.6.0 NVIDIA 556.12
> Integrated accelerated graphics device with 4 adapter port(s)
        - Secondary monitor is laptop's integrated screen or built-in port
        - Windows Main Display attached to adapter port #1
 
Secondary graphics devices.
  Intel(R) UHD Graphics (Intel) Memory: 1GB, Driver date: 3-3-2023 (M-D-Y).
> Integrated graphics device with 3 adapter port(s)
        - There are no monitors attached to this device. Laptop lid is probably closed
 
OpenGL Settings
  Safe mode: Off
  Use accelerated hardware modes: On
  Redraw scene when viewports are exposed: On
  Graphics level being used: OpenGL 4.6 (primary GPU's maximum)
  Anti-alias mode: 4x
  Mip Map Filtering: Linear
  Anisotropic Filtering Mode: High
  Vendor Name: NVIDIA Corporation
  Render version: 4.6
  Shading Language: 4.60 NVIDIA
  Driver Date: 6-25-2024
  Driver Version: 32.0.15.5612
  Maximum Texture size: 32768 x 32768
  Z-Buffer depth: 24 bits
  Maximum Viewport size: 32768 x 32768
  Total Video Memory: 6 GB
 
Rhino plugins that do not ship with Rhino
  C:\Program Files\Chaos Group\V-Ray\V-Ray for Rhinoceros\V8\VRayForRhino.rhp	"V-Ray for Rhino"	
  C:\ProgramData\McNeel\Rhinoceros\8.0\Plug-ins\Datasmith Rhino Exporter (d1fdc795-b334-4933-b680-088119cdc6bb)\DatasmithRhino8.rhp	"Datasmith Exporter"	5.4.3.0
  C:\ProgramData\Proving Ground\Conveyor\ProvingGround.ConveyorRhinoInside\net48\ProvingGround.ConveyorRhinoInside.rhp	"Conveyor Rhino NET8"	5.1.0.0
  C:\Program Files\Enscape\Enscape.Rhino.Plugin-net48\Enscape.Rhino8.Plugin.dll	"Enscape.Rhino8.Plugin"	4.1.1.35
  C:\Program Files\Orkestra\Orkestra\net7\OrkestraRGH.dll	"Orkestra Online"	2024.1.9.1
  C:\ProgramData\McNeel\Rhinoceros\packages\8.0\LadybugTools\1.38.230\Ladybug.RH.Loader.rhp	"Ladybug.RH.Loader"	1.38.230.0
  C:\ProgramData\McNeel\Rhinoceros\packages\8.0\Pollination\1.52.19\Pollination.RH.Loader.rhp	"Pollination.RH.Loader"	1.52.19.0
  C:\Users\melrzm\Downloads\net48_andrea\net48\Wb.ModelEstablishment.Rhino.rhp	"Wb.ModelEstablishment.Rhino"	1.1.3.0
 
Rhino plugins that ship with Rhino
  C:\Program Files\Rhino 8\Plug-ins\Commands.rhp	"Commands"	8.12.24282.7001
  C:\Program Files\Rhino 8\Plug-ins\WebBrowser.rhp	"WebBrowser"	
  C:\Program Files\Rhino 8\Plug-ins\rdk.rhp	"Renderer Development Kit"	
  C:\Program Files\Rhino 8\Plug-ins\RhinoScript.rhp	"RhinoScript"	
  C:\Users\melrzm\AppData\Roaming\McNeel\Rhinoceros\packages\8.0\PanelingTools\2024.8.20.677\PanelingTools.rhp	"PanelingTools"	
  C:\Program Files\Rhino 8\Plug-ins\IdleProcessor.rhp	"IdleProcessor"	
  C:\Program Files\Rhino 8\Plug-ins\RhinoRenderCycles.rhp	"Rhino Render"	8.12.24282.7001
  C:\Program Files\Rhino 8\Plug-ins\rdk_etoui.rhp	"RDK_EtoUI"	8.12.24282.7001
  C:\Program Files\Rhino 8\Plug-ins\NamedSnapshots.rhp	"Snapshots"	
  C:\Program Files\Rhino 8\Plug-ins\MeshCommands.rhp	"MeshCommands"	8.12.24282.7001
  C:\Program Files\Rhino 8\Plug-ins\IronPython\RhinoDLR_Python.rhp	"IronPython"	8.12.24282.7001
  C:\Program Files\Rhino 8\Plug-ins\RhinoCycles.rhp	"RhinoCycles"	8.12.24282.7001
  C:\Program Files\Rhino 8\Plug-ins\Toolbars\Toolbars.rhp	"Toolbars"	8.12.24282.7001
  C:\Program Files\Rhino 8\Plug-ins\3dxrhino.rhp	"3Dconnexion 3D Mouse"	
  C:\Program Files\Rhino 8\Plug-ins\Displacement.rhp	"Displacement"	
  C:\Program Files\Rhino 8\Plug-ins\SectionTools.rhp	"SectionTools"	

System-3: Plugin error

Rhino 8 SR12 2024-10-8 (Rhino 8, 8.12.24282.07001, Git hash:master @ 2f42167325d83e0da0f3fe08e796c2b26e602bc5)
License type: Commercial, build 2024-10-08
License details: Cloud Zoo

Windows 11 (10.0.22631 SR0.0) or greater (Physical RAM: 32GB)
.NET 7.0.20

Computer platform: LAPTOP  - Plugged in [100% battery remaining]

Hybrid graphics configuration.
  Primary display: Intel(R) UHD Graphics (Intel) Memory: 1GB, Driver date: 10-6-2023 (M-D-Y).
    > Integrated graphics device with 4 adapter port(s)
        - Windows Main Display is laptop's integrated screen or built-in port
  Primary OpenGL: NVIDIA RTX A3000 12GB Laptop GPU (NVidia) Memory: 12GB, Driver date: 6-25-2024 (M-D-Y). OpenGL Ver: 4.6.0 NVIDIA 556.12
    > Integrated accelerated graphics device with 4 adapter port(s)
        - Secondary monitor is laptop's integrated screen or built-in port

OpenGL Settings
  Safe mode: Off
  Use accelerated hardware modes: On
  Redraw scene when viewports are exposed: On
  Graphics level being used: OpenGL 4.6 (primary GPU's maximum)

  Anti-alias mode: 4x
  Mip Map Filtering: Linear
  Anisotropic Filtering Mode: High

  Vendor Name: NVIDIA Corporation
  Render version: 4.6
  Shading Language: 4.60 NVIDIA
  Driver Date: 6-25-2024
  Driver Version: 32.0.15.5612
  Maximum Texture size: 32768 x 32768
  Z-Buffer depth: 24 bits
  Maximum Viewport size: 32768 x 32768
  Total Video Memory: 12 GB

Rhino plugins that do not ship with Rhino
  C:\Program Files\Chaos Group\V-Ray\V-Ray for Rhinoceros\V8\VRayForRhino.rhp	"V-Ray for Rhino"	
  C:\Program Files\Common Files\McNeel\Rhinoceros\6.0\Plug-ins\ElefrontProperties (5db9285b-b408-41e2-b815-ed6ad84fd4a9)\1.0.0.0\ElefrontProperties.rhp	"ElefrontProperties"	1.0.0.0
  C:\Users\sydata\AppData\Roaming\McNeel\Rhinoceros\packages\8.0\WombatRhino\1.0.5.17\WombatRhino.rhp	"WombatRhino"	1.0.5.17
  C:\ProgramData\McNeel\Rhinoceros\packages\8.0\LadybugTools\1.38.230\Ladybug.RH.Loader.rhp	"Ladybug.RH.Loader"	1.38.230.0
  C:\ProgramData\McNeel\Rhinoceros\packages\8.0\Pollination\1.52.19\Pollination.RH.Loader.rhp	"Pollination.RH.Loader"	1.52.19.0

Rhino plugins that ship with Rhino
  C:\Program Files\Rhino 8\Plug-ins\Commands.rhp	"Commands"	8.12.24282.7001
  C:\Program Files\Rhino 8\Plug-ins\rdk.rhp	"Renderer Development Kit"	
  C:\Users\sydata\AppData\Roaming\McNeel\Rhinoceros\packages\8.0\PanelingTools\2024.8.20.677\PanelingTools.rhp	"PanelingTools"	
  C:\Program Files\Rhino 8\Plug-ins\RhinoRenderCycles.rhp	"Rhino Render"	8.12.24282.7001
  C:\Program Files\Rhino 8\Plug-ins\rdk_etoui.rhp	"RDK_EtoUI"	8.12.24282.7001
  C:\Program Files\Rhino 8\Plug-ins\NamedSnapshots.rhp	"Snapshots"	
  C:\Program Files\Rhino 8\Plug-ins\MeshCommands.rhp	"MeshCommands"	8.12.24282.7001
  C:\Program Files\Rhino 8\Plug-ins\IronPython\RhinoDLR_Python.rhp	"IronPython"	8.12.24282.7001
  C:\Program Files\Rhino 8\Plug-ins\RhinoCycles.rhp	"RhinoCycles"	8.12.24282.7001
  C:\Program Files\Rhino 8\Plug-ins\Toolbars\Toolbars.rhp	"Toolbars"	8.12.24282.7001
  C:\Program Files\Rhino 8\Plug-ins\3dxrhino.rhp	"3Dconnexion 3D Mouse"	
  C:\Program Files\Rhino 8\Plug-ins\Displacement.rhp	"Displacement"	
  C:\Program Files\Rhino 8\Plug-ins\SectionTools.rhp	"SectionTools"	

We’d be happy to shared the build of our plugin privately if that helps.

cc @andreatas

Netcore can reference net48.
If I create a new net48 only plugin and drag and drop the .rhp into Rhino, it’ll load and run.
But there are differences between the two that can cause issues, the compatibility is not 100% hence why it’s best to use net48 in /netfx mode and core in netcore mode.

This might be why it some times or kinda works. If you can, I’d multi-target your plugin and you should have no issues.

That being said, why does it work 66% of the time for you? I’m honestly not sure, there’s no obvious answer (to me) unfortunately.

If you are constrained to run Rhino in net core, and you need your plugin in net48, or even just curious. I’d suggest you try running in /safemode (i.e without plugins) to see if this results in uniform behaviour, the main difference I see between the 3 is plugins. That and the 3rd system info references a Rhino 6 plugin, which makes me think that machine had rhino 6 originally and upgraded, a fresh install may help, I can’t say for sure.