# Best Practices for loading Legacy Components For Rhino 5

**URL:** <https://discourse.mcneel.com/t/best-practices-for-loading-legacy-components-for-rhino-5/65150>\
**Category:** Grasshopper\
**Created:** [June 14, 2018, 11:18pm UTC](https://discourse.mcneel.com/t/best-practices-for-loading-legacy-components-for-rhino-5/65150 "2018-06-14T23:18:33Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![gankeyu](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/gankeyu/32/487811_2.png) [@gankeyu](https://discourse.mcneel.com/u/gankeyu)\
**Post date:** [June 15, 2018, 12:17am UTC](https://discourse.mcneel.com/t/best-practices-for-loading-legacy-components-for-rhino-5/65150/2 "2018-06-15T00:17:33Z")

</div>

There is a Rhino-6-specific path. Files in this directory will be loaded by GH1 but not by GH0

```
%appdata%\Grasshopper\6\Libraries\

```

It’s also a solution that GH loads assemblies from Rhino plugin path, such as:

```auto
C:\Program Files\Rhino 6\Plug-ins\Grasshopper\Components\
C:\Program Files\Rhino 6\System
C:\Program Files\Rhino 6\Plug-ins\Toolbars
C:\Program Files\Rhino 6\Plug-ins
C:\Program Files\Rhino 6\Plug-ins\Grasshopper
C:\Program Files\Rhino 6\Plug-ins\IronPython

```

Obviously Rh5 and Rh6 have different plugin locations.

I think the design logic here should be: If a plugin doesn’t use undocumented APIs, it should work in R6 just as it worked in R5, but not vice versa.

As for my plugin, I never run into any feature that is available in R5 but not in R6, so my plugin supports both version with one single binary. However, there are notable differences between GH for Mac and GH for Win, consequently I never finished the porting until recently.

---

_[View the full topic](https://discourse.mcneel.com/t/best-practices-for-loading-legacy-components-for-rhino-5/65150)._
