Heim > Backend-Entwicklung > C++ > Wie kann ich C#-Bibliotheken aus Python aufrufen, ohne IronPython zu verwenden?

Wie kann ich C#-Bibliotheken aus Python aufrufen, ohne IronPython zu verwenden?

Mary-Kate Olsen
Freigeben: 2024-12-30 10:56:11
Original
583 Leute haben es durchsucht

How Can I Call C# Libraries from Python Without Using IronPython?

Aufrufen von C#-Bibliotheken aus Python

Der Versuch, C#-Bibliotheken aus Python aufzurufen, war ein häufiges Problem. Während Optionen wie IronPython auf Kompatibilitätsprobleme stoßen können, besteht ein alternativer Ansatz darin, C#-Code aus Python aufzurufen.

Um dies zu erreichen, befolgen Sie diese Schritte:

Verwenden des UnmanagedExports NuGet-Pakets

Integrieren Sie das NuGet-Paket „UnmanagedExports“ wie beschrieben in Ihr .Net-Projekt unter https://sites.google.com/site/robertgiesecke/Home/uploads/unmanagedexports.

Funktionen ohne COM exportieren

Mit „UnmanagedExports“ ist das möglich Exportfunktionen direkt unter Umgehung der COM-Schicht. Betrachten Sie diesen C#-Beispielcode:

using System;
using RGiesecke.DllExport;

class Test
{
    [DllExport("add", CallingConvention = CallingConvention.Cdecl)]
    public static int TestExport(int left, int right)
    {
        return left + right;
    }
}
Nach dem Login kopieren

Laden und Aufrufen exportierter Funktionen in Python (2.7)

In Python können Sie die DLL laden und die exportierten Methoden aufrufen wie folgt:

import ctypes
a = ctypes.cdll.LoadLibrary(source)
a.add(3, 5)
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich C#-Bibliotheken aus Python aufrufen, ohne IronPython zu verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage