3 Pluspunkte 0 Minuspunkte
Wie kann ich eine DLL Datei die ich mit gcc erstellt habe mit C# laden und die Funktionen aufrufen?
von  

1 Antwort

2 Pluspunkte 0 Minuspunkte

Kennzeichne alle Funktionen mit "__declspec(dllexport)" dass sie exportiert werden.

// Beispiel.c
#include <stdio.h>

__declspec(dllexport) void HelloWorld() {
    printf("Hello, World!\n");
}

In deinem C# Projekt kannst du die DllImport Attribute verwenden, um auf die Funktionen der DLL zuzugreifen.

using System;
using System.Runtime.InteropServices;

class Program {
    // Die DLL-Datei muss im selben Verzeichnis wie das Ausführungsverzeichnis oder im Systempfad liegen.
    const string DLL_PATH = "Beispiel.dll";

    // Importieren der DLL-Funktion
    [DllImport(DLL_PATH)]
    public static extern void HelloWorld();

    static void Main() {
        // Aufrufen der DLL-Funktion
        HelloWorld();
    }
}
von (706 Punkte)  
.Net String aus C Funktion