Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Hi, ich bin folgender Anleitung gefolgt http://www.java-forum.org/spezialthemen/35582-jni-windows-anleitung.html um eine dll für die jni (?) zu erzeugen, habe die nötigen Dateien geschrieben weiß aber nicht wie man C Dateien kompiliert, bzw die dll hierfür erzeugt.
Wie soll ich jetzt vorgehen?
Die Sourcefiles sind im Anhang.
Compilieren kannst du entweder mit borland dev-c++ (find ich persönlich *******³) oder mit M$ VC++. Musst in den Projektsettings die ausgabe von .exe in .dll umstellen dann funsts.
Ich habe es folgender maßen versucht, ich habe "Microsoft Visual Studio Express 2010" runtergeladen und mit mit dem Programm Visual C++ 2010 Express habe ich meine "getwindowimp.c" datei geöffnet.
Anschließend bin ich unter Extras auf Visual Studio- Eingabeaufforderung gegangen und bin in der anschließend geöffneten cmd in den pfad mit der "getwindowimp.c" und der "getwindow.h" headerfile gewechselt (liegen momentan im Desktop) und habe folgenden befehl ausprobiert.
Leider habe ich keine Ahnung von C und ich weiß nicht wie ich die Datei anschließend kompilieren soll.
Ich bekomme folgenden Fehler ausgegeben.
Code:
cl : Befehlszeile warning D9002 : Unbekannte Option "-getwindow.dll" wird ignoriert.
cl : Befehlszeile warning D9024 : Unbekannter Typ der Quelldatei "-Ic:\java\include", Objektdatei wird angenommen.
cl : Befehlszeile warning D9024 : Unbekannter Typ der Quelldatei "-Ic:\java\include\win32", Objektdatei wird angenommen.
getwindowimp.c
getwindowimp.c(3) : fatal error C1083: Datei (Include) kann nicht geöffnet werden: "jni.h": No such file or directory
@XHelp
wie binde ich die user32.lib ein? ich habe vorher noch nie eine Dll erstellt und habe daher nicht viel Ahnung vom Fach
@Tomate_Salate
ich habe die #include <windows.h> umbenannt und die winuser.h rausgelöscht.
Ich habe versucht in den Projektsettings etwas in der Richtung zu finden jedoch habe ich weder etwas mit Dll und Exe noch mit einer Compilierfunktion gefunden, vielleicht bin ich einfach auch nur blind =)
Ich habe soweit rausgefunden das dies mit der CL.exe funktionieren sollte, jedoch funktioniert mein Compilierversuch leider nicht.
MS VS2010:
Rechtsklick auf Projektmappe => (links ist standartmäßig der Punkt General ausgewählt) und in den Settings: [c]Configuration Type[/c] von Application (.exe) auf Dynamic Library (.dll) umstellen.