Hallo zusammen,
ich habe mich hier schon einmal umgesehen und schon ein paar Anregungen bekommen. Aber es will alles noch nicht so wie ich will.
So jetzt zu meinem Problem:
Ich soll mit Visual Studio 2005 eine Grafische Oberfläche erstellen und das mit C# soweit kein Problem.
Ich soll aber auch aus der Anwendung heraus Hardware ansprechen. Zu diesem Zweck habe ich eine DLL-Datei eine .lib und eine .h Datei bekommen sonst nichts.
Aus der Header(.h)-Datei habe ich mir die vier Funktionen heraus gesucht die ich für meine Zwecke benötige:
extern "C" HANDLE PASCAL EXPORT InitPendelkarte (void);
extern "C" BOOL PASCAL EXPORT LeseWinkel (long* pWinkel,long* pPosition);
extern "C" BOOL PASCAL EXPORT SetzeKraft(float fKraft);
extern "C" void PASCAL EXPORT ClosePendelkarte(HANDLE hHandle);
Ich habe die DLL in mein Projekt eingefügt über Hinzufügen-> Vorhandenes Element und zum Test folgende Zeilen Code die ich schon im Forum gefunden habe eingefügt:
class hwpendContr
{
[System.Runtime.InteropServices.DllImport("hwpendContr.dll")]
public static extern bool SetzeKraft(float fKraft);
}
Ich habe diese Funktion gewält, da sie mir am einfachsten vorkamm (keine Handle, keine pointer).
In einem anderen Teil des Projetes rufe ich die Funktion auf:
hwpendContr.SetzeKraft((float)5);
Leider wird mir beim ausführen immer an dieser Stelle gesagt:
Die DLL hwpendContr.dll: Das angegebene Modul wurde nicht gefunden. (Ausnahme von HRESULT: 0x8007007E) kann nicht geladen werden.
Jetzt bin ich aber mit meinem Latein am ende.
Ich würde mich über Hilfe sehr freuen.
Danke
Hanz