Use .NET dll in Python

Stinkidog picture Stinkidog · Dec 14, 2015 · Viewed 15.3k times · Source

I've developed a dll in visual studio that I'd now like to use in Python using the standard IDLE.

I cannot seem to find a straightforward solution to this anywhere. I've tried using pip install *dll location*, but to no luck (hopes were never high).

I've pretty much solely been a .NET developer so my knowledge of python is pretty poor. There must be some way to install third party dll packages.

Answer

Stinkidog picture Stinkidog · Dec 14, 2015

Just as a plain and simple answer for others which I was struggling to find.

The dll location needs to be added to the path variable. This can be done simply by importing sys, and invoking the method shown (the path should not include the dll file).

You can then use your dll with Python for .NET (impot clr), by setting up the reference with the AddReference method. Then you're dll is ready to go! An example:

import sys
import clr

sys.path.append(r"C:\Users\...")

clr.AddReference("MyDll")

from mynamespace import myclass

x = myclass()