Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

MasterK

Frischling

Beiträge: 92

Wohnort: Koblenz

Beruf: Teamleiter Softwareentwicklung

  • Private Nachricht senden

11

26.04.2009, 13:22

Zitat von »"killmichnich"«

ich will das einfach lieber in c++ machen, weil ich das schon kann ^^

Ja, grafische ausgaben in java sind ja auch so schwer... :roll:

12

26.04.2009, 16:24

Zitat von »"killmichnich"«

das mein ich ja garnich, das kann ich auch selber rausfinden
ich mein viel mehr, was ich genau mit der dll anstellen soll?

Du wolltest doch Nachrichten an dein Programm übergeben.
Also könntest du dir das Handle des entsprechenden Programms besorgen und Nachrichten verschicken (durch Funktionen in der Dll).

killmichnich

unregistriert

13

26.04.2009, 18:02

hey das is ne gute idee
thx :D

killmichnich

unregistriert

14

27.04.2009, 20:53

ok jetzt hab ich aber gleich nochmal ein problem:

Quellcode

1
2
3
4
5
6
7
public class test1
{
  test1()
  {
  System.loadLibrary("dll");
  }
}

so sieht mein code jetzt aus, und ich krieg die fehlermeldung, dass die dll nich vorhanden sei. Ich hab die jetzt sowohl in system32 als auch in den selben ordner die das programm getan, aber es findet trotzdem nix :/.
auch wenn ich das ganze mit System.load("c://dll.dll"); laden will, kommt der selbe fehler ...
was mach ich da falsch mit?

VuuRWerK

Frischling

Beiträge: 59

Wohnort: Dresden

Beruf: Softwareentwickler

  • Private Nachricht senden

15

27.04.2009, 21:07

Versuch vor dem System.loadLibrary folgendes:

Quellcode

1
System.setProperty("java.library.path", "C:\\path\\to\\lib");


Zudem gehört das loadLibrary nicht in eine Methode, machs wie folgt:

Quellcode

1
2
3
4
5
6
public class Name {
    static {
        System.setProperty("java.library.path", "C:\\path\\to\\lib");
        System.loadLibrary("dll");
    }
}


Gut Schuß
VuuRWerK ;)
http://german-bash.org/212445
"C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do it blows your whole leg off." - Bjarne Stroustrup

killmichnich

unregistriert

16

28.04.2009, 07:03

bäh jetzt hab ich das nächste problem:

java.lang.UnsatisfiedLinkError: C:\Windows\System32\dll.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
at java.lang.ClassLoader$NativeLibrary.load(Native Method)

ich kann mir ja ungefähr denken was das heißt, ich weiß nur nich, was ich dagegen tun soll oO

17

28.04.2009, 10:24

Ich weiß jetzt nicht gnau wo aber du musst bei deinem Compiler inder IDE umstellen, dass er für 64 Bit Systeme Code erzeugt und nicht für 32 Bit Systeme

VuuRWerK

Frischling

Beiträge: 59

Wohnort: Dresden

Beruf: Softwareentwickler

  • Private Nachricht senden

18

28.04.2009, 16:20

Richtig, Du kannst kein 32bit binary auf einer 64-bit Plattform linken.
Vermutlich entwickelst Du auf einer 32bit Plattform aber willst es auf einer 64bit Plattform verwenden, richtig? Dann musst Du sehen das Du eine 64bit Plattfom ranbekommst zum kompilieren.

Gut Schuß
VuuRWerK ;)
http://german-bash.org/212445
"C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do it blows your whole leg off." - Bjarne Stroustrup

xardias

Community-Fossil

Beiträge: 2 731

Wohnort: Santa Clara, CA

Beruf: Software Engineer

  • Private Nachricht senden

19

28.04.2009, 17:14

Zitat von »"VuuRWerK"«

Richtig, Du kannst kein 32bit binary auf einer 64-bit Plattform linken.
Vermutlich entwickelst Du auf einer 32bit Plattform aber willst es auf einer 64bit Plattform verwenden, richtig? Dann musst Du sehen das Du eine 64bit Plattfom ranbekommst zum kompilieren.

Gut Schuß
VuuRWerK ;)

Ein cross compiler der nach 64bit kompiliert würde schon reichen ;).
Afaik kann man dem beim Setup von Visual Studio mitinstallieren.

PS: Ich glaube nicht, dass dieses Vorhaben so eine prima Idee ist. Mit einem Java3D Tutorial dürftest du dir das wesentlich schneller zusammenbasteln können. Java ist zwar anders als C++, aber auch sehr schnell zu lernen wenn du C++ bereits kannst.

VuuRWerK

Frischling

Beiträge: 59

Wohnort: Dresden

Beruf: Softwareentwickler

  • Private Nachricht senden

20

28.04.2009, 17:59

Zitat von »"xardias"«

Ein cross compiler der nach 64bit kompiliert würde schon reichen ;).
Afaik kann man dem beim Setup von Visual Studio mitinstallieren.

Ich persönlich bin überhaupt kein Fan von Cross-Compilern. Wobei man bei 64 und 32bit eventuell noch drüber wegsehen kann (aber dann nur 32bit auf einem 64bit System kompilieren), aber für versch. Plattformen wie Linux und Windows glaube ich ist es nur ein Schein der Unabhängigkeit.

Btw: Java ist kaum anders als C++. Alles ist ein Zeiger sieht von der Syntax her aus wie ein Objekt und muss man wegen der GC nicht selber zerstören. Nachteil bei Java, man kann nicht mal schnell eine Funktion schreiben sondern muss immer erst eine (statische) Klasse mit (statischer) Methode schreiben.

Gut Schuß
VuuRWerK ;)
http://german-bash.org/212445
"C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do it blows your whole leg off." - Bjarne Stroustrup

Werbeanzeige