en tant qu'exemple simple, j'ai une fonction C qui reçoit un int, l'incrémente et retourne la valeur incrémentée. Sur l'autre côté, j'entre le numéro d'entrée dans la zone de texte en C#. comment puis-je appeler la fonction C pour traiter le numéro et le renvoyer de C#? Merci d'avanceappelant la fonction c à partir de C#
9
A
Répondre
12
Vous recherchez P/Invoke.
Vous ne aurez besoin d'une référence à System.Runtime.InteropServices
puis procédez comme suit, si votre DLL C contient une fonction appelée increase_int
:
[DllImport("mylib.dll")]
private static extern int increase_int(int in_value);
et l'utiliser à partir de votre code faisant
int newValue = increase_int(oldValue);
parfait. ..thank yo .. –
Salut, je ne peux pas déboguer le programme, pourquoi le contrôle ne va pas dans la fonction appelée lors de l'étape (F11) ...? –
Vous ne pouvez pas déboguer un dll C en utilisant les mécanismes de débogage standard de .Net. – Residuum