Maison >développement back-end >C++ >Comment puis-je appeler une bibliothèque C# (y compris WPF) à partir de Python ?

Comment puis-je appeler une bibliothèque C# (y compris WPF) à partir de Python ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-31 03:08:09744parcourir

How Can I Call a C# Library (Including WPF) from Python?

Invocation d'une bibliothèque C# à partir de Python

En réponse à la requête concernant l'appel d'une bibliothèque C# (en particulier WPF) à partir du code Python, il existe une solution simple utilisant NuGet et les "UnmanagedExports" package.

Implémentation :

  • Ajouter le package : Installez le package "UnmanagedExports" dans votre projet C# à l'aide de NuGet.
  • Exporter directement : Éliminez le besoin de COM en utilisant le Package UnmanagedExports pour exporter directement les méthodes. Un exemple d'extrait pour exporter la fonction "ajouter" est fourni ci-dessous :
[DllExport("add", CallingConvention = CallingConvention.Cdecl)]
public static int TestExport(int left, int right)
{
    return left + right;
}

Intégration avec Python :

Chargez la DLL exportée dans Python à l'aide de ctypes . Pour Python 2.7, le code suivant montre comment importer et appeler la fonction « ajouter » :

import ctypes
a = ctypes.cdll.LoadLibrary(source)
a.add(3, 5)

En utilisant cette approche, vous pouvez appeler de manière transparente les fonctions de la bibliothèque C# à partir du code Python, comblant ainsi l'écart de compatibilité entre les deux langues.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn