Hallo zusammen,
ich habe einige Probleme beim Einbinden der Inpout32.dll (ich möchte unter WinXP (daher die Inpout32.dll) mittels einer MFC-Anwendung Bits an den LTP1- Parallelport schieben, um LEDs zu steuern):
folgenden Code habe ich hier im Forum unter
http://www.tutorials.de/forum/showthread.php?t=134607&highlight=dll
gefunden (von Homer) und an meine DLL angepaßt (der Export der Inpout32.dll sind die Funktionen Inp32(short) und Out32(short, short):
Folgende Fehlermeldungen und Warnungen bekomme ich:
1.) error C2065: 'GetProcAdress' : nichtdeklarierter Bezeichner
2.) warning C4091: '' : Ignoriert auf der linken Seite von 'struct HINSTANCE__ *', wenn keine Variable deklariert wurde
Daher meine Fragen:
1. Was mache ich falsch, bzw. welche Includes fehlen mir vielleicht
2. Gibt es eine einfachere Lösung, mit der ich in einer MFC an die Out32-Funktion der DLL herankomme ?
3. Ist der erste Typdef richtig ? Ich habe den Rückgabetyp entfernt, da es sonst eine Fehlermeldung gab...
4. Wo muß ich die DLL hinkopieren, damit mein Programm sie findet ?
5. Es sollte doch ok sein, wenn ich den obigen Code unter "CDialog::OnInitDialog();" in meiner cpp stehen habe, oder
Hat jemand von euch zufällig bereits so ein kleines Programm geschrieben und könnte mir seinen Code mal zeigen ?
Vielen Dank für Eure Hilfe !
Grüße BEN
ich habe einige Probleme beim Einbinden der Inpout32.dll (ich möchte unter WinXP (daher die Inpout32.dll) mittels einer MFC-Anwendung Bits an den LTP1- Parallelport schieben, um LEDs zu steuern):
folgenden Code habe ich hier im Forum unter
http://www.tutorials.de/forum/showthread.php?t=134607&highlight=dll
gefunden (von Homer) und an meine DLL angepaßt (der Export der Inpout32.dll sind die Funktionen Inp32(short) und Out32(short, short):
Code:
// etwas zur Verständlichkeit:
typedef (_stdcall *MyFunktionPtr)(short,short); // Funktion Out32 hat 2 Parameter vom Typ short.
HMODULE MyModule; // Handle auf die DLL
MyModule = LoadLibrary("inpout32.dll"); // in welchem Verzeichnis muß die DLL-Datei liegen
if(HMODULE) // konnte die DLL geladen werden?
{
MyFunktionPtr MyFunktion; // Deklaration eines Funktionszeigers
MyFunktion = (MyFunktionPtr)GetProcAdress(MyModule, "Out32");
if(MyFunktion) // konnte die Funktionsaddresse gefunden werden
{
int ret;
ret = MyFunktion(888,255); // Aufruf
}
else
{
// Fehlerbehandlung
}
FreeLibrary(MyModule);
}
else
{
// Fehlerbehandlung
}
Folgende Fehlermeldungen und Warnungen bekomme ich:
1.) error C2065: 'GetProcAdress' : nichtdeklarierter Bezeichner
2.) warning C4091: '' : Ignoriert auf der linken Seite von 'struct HINSTANCE__ *', wenn keine Variable deklariert wurde
Daher meine Fragen:
1. Was mache ich falsch, bzw. welche Includes fehlen mir vielleicht
2. Gibt es eine einfachere Lösung, mit der ich in einer MFC an die Out32-Funktion der DLL herankomme ?
3. Ist der erste Typdef richtig ? Ich habe den Rückgabetyp entfernt, da es sonst eine Fehlermeldung gab...
4. Wo muß ich die DLL hinkopieren, damit mein Programm sie findet ?
5. Es sollte doch ok sein, wenn ich den obigen Code unter "CDialog::OnInitDialog();" in meiner cpp stehen habe, oder
Hat jemand von euch zufällig bereits so ein kleines Programm geschrieben und könnte mir seinen Code mal zeigen ?
Vielen Dank für Eure Hilfe !
Grüße BEN
Zuletzt bearbeitet: