LoginSignup
1
1

More than 1 year has passed since last update.

pythonnetでPythonからDLLを呼び出す

Last updated at Posted at 2022-06-22

今回は以前に業務でPythonファイルからC#DLLを使用しないといけない場面があったのでその時の備忘録です。

DLL

今回は例として以下のようなコードのDLLを使用します。

test.cs
public class Test
    {
        public static int Addiction(int a, int b)
        {
            int num;
            num = a + b;

            return num;
        }
            
    }

簡単な足し算をするプログラムです。
今回はインスタンス化しなくても呼び出せるように静的メソッドを定義しています。

Python

Python 3.7.8

使用するDLLが32bitの時はPythonも32bitを使用するようにしてください。64bitのPythonでは32bitのDLLを使用することはできません。

ライブラリ

題にも書いた通り、pythonnetを使用します

pip install pythonnet

実行ファイル

test.py
# 以下3行でDLLの読み込み
import clr
clr.AddReference("読み込むDLLのパス")
from Test import Test

# TestクラスのAddictionメソッドを呼び出す
a = Test.Addiction(3, 5)
print(a)

実行してみる

python test.py

8と出力されれば問題なく動作しています。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1