Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   JoyToAny - Alles mit dem Joystick (https://www.delphipraxis.net/128970-joytoany-alles-mit-dem-joystick.html)

Hybrid666 10. Feb 2009 13:22


JoyToAny - Alles mit dem Joystick
 
Servus,

vielleicht erinnern sich einige an JoyMedia, welches ich vor sehr langer Zeit mal in Freeware veröffentlicht hab. Das Programm war verbuggt und hatte eine schlechte Joystick API. Nun hab ich mich mit einem kommolitonen zusammengesetzt und wir haben das Programm komplett von scratch neu geschrieben und es JoyToAny getauft.

Es hat weitaus weniger Bugs, erkennt alle Joysticks die Windows auch erkennt (nicht wie in JoyMedia, welches einige Joystick einfach mal nicht erkannt hat). Die Plugins funktionieren nun ohne Sharemem (also wird die borlandmm.dll nicht mehr gebraucht).

Und die beste änderung: Es ist opensource.

Hier mal eine kleine (unvollständige) featurelist:
  • Verbesserte Joystickerkennung
  • Erweiterbar durch Plugins
  • Winamp.dll zur steuerung von Winamp
  • Nemp.dll zum steuern von Nemp, einem von Gausi entwickelten, sehr guten Player
  • iTunes.dll hat zwar wenig funktionen, aber zum steuern reicht es
  • keyboard.dll mit der man Tastaturshortcuts auf das Gamepad oder den Joystick legen kann
  • mouse.dll welche die maus komplett über den Joystick steuerbar macht
  • wincontrol.dll (in die noch einige funktionen kommen werden) kann momentan die windows masterlautstärke ändern

Momentan ist auch eine API in arbeit (und ca 90% fertig), welche es ermöglicht, JoyToAny zu erweitern.

Den sourcecode findet ihr auf http://joytoany.sf.net/ und auf der website http://www.joytoany.tk/ findet ihr eine Dokumentation zum schreiben einiger Plugins (und bald auch zum nutzen der API).

Download gibt es ebenfalls auf der JoyToAny.tk homepage, aber für die faulen gibt es hier auch einen direkten link:
http://jayyeff.kilu.de/joytoany/downloads/jta05.rar

Selbstgeschriebene Plugins könnt ihr über das Uploadformular auf http://www.joytoany.tk hochladen, wir werden es uns dann ansehen und auf der seite veröffentlichen.

Ich hoffe das die version den usern hier nun mehr zusagt als JoyMedia. Viel Spaß damit!

MfG Hybrid666 & JayEff

P.S.: Hier noch das Changelog:
Zitat:

0.1 Beta
- ADDED: Joysticks get found via WinAPI (buggy)
- ADDED: Pluginsupport
- ADDED: Function mapping

0.2 Beta
- ADDED: Setup dialog
- ADDED: Info dialog
- ADDED: Axissetup
- ADDED: iTunes Plugin
- ADDED: playsoung Plugin
- ADDED: User can change the polling time
- ADDED: Chosen Joystick gets saved in ini file and selected on every new start
- ADDED: Startmode setting
- ADDED: Start in Tray function (buggy)
- BUGFIX: Deadzones got read wrong
- BUGFIX: CPU usage was too big
- BUGFIX: RAM usage was too big
- CHANGED: mouse.dll has now more parameters

0.3 Beta RC1
- ADDED: Deadzones now seperatly settable
- ADDED: getreaddeadzone for the plugins
- ADDED: More settings in the Setup dialog

0.4
- ADDED: Reload Plugin button (so the program doesnt need a restart after adding plugins anymore)
- ADDED: Languagesupport
- BUGFIX: TrayIcon bug
- BUGFIX: Program reacts on no joystick connected
- BUGFIX: Some minor bugs
- BUGFIX: DeadZones bug

0.5
- ADDED: Recallibrate Button (if joystick is messing around)
- BUGFIX: Configure messed some Axes up
- BUGFIX: Bug in the Languages

Hybrid666 15. Feb 2009 18:50

Re: JoyToAny - Alles mit dem Joystick
 
Neue Version online.

Finds echt schade das es kein Feedback gibt, steckt einiges an arbeit drin.

MfG

Florian H 15. Feb 2009 19:00

Re: JoyToAny - Alles mit dem Joystick
 
Ich denke einfach mal, viele Leute haben keinen Joystick (mehr) ... so geht es zumindest mir - sorry :/

himitsu 15. Feb 2009 19:14

Re: JoyToAny - Alles mit dem Joystick
 
mit 'nem Gamepad geht das auch?

sx2008 15. Feb 2009 19:31

Re: JoyToAny - Alles mit dem Joystick
 
In Unit1 sind einige Unschönheiten.
Selbstgeschriebene Methoden sollten nicht mit den automatisch von der IDE generierten Methoden vermischt werden:
Delphi-Quellcode:
TForm1 = class(TForm)
   Timer1: TTimer;
   ....
   // alles hier wird autom. generiert
   // Finger weg
private
   { Private-Deklarationen }

   // HIER kommen eigene Variable und Methoden rein
   // zuerst die Variablen, dann die Methoden und zum Schluss evtl. noch Properties
public
   { Public-Deklarationen }
   // falls nötig auch im Bereich public
end;
Und dann hast du noch eine ganze Ladung von globaler Variablen.
Diese Variablen gehören in den private-Abschnitt von TForm1. (zumindest so viele wie möglich)

furuha 15. Feb 2009 19:39

Re: JoyToAny - Alles mit dem Joystick
 
Zitat:

Zitat von himitsu
mit 'nem Gamepad geht das auch?

Ich möchte mich der Frage anschließen. Testen kann ich leider nicht, da ich im Moment meine beiden Logitech Pads verliehen habe.

Sunlight7 15. Feb 2009 21:52

Re: JoyToAny - Alles mit dem Joystick
 
Zitat:

Zitat von furuha
Zitat:

Zitat von himitsu
mit 'nem Gamepad geht das auch?

Ich möchte mich der Frage anschließen. Testen kann ich leider nicht, da ich im Moment meine beiden Logitech Pads verliehen habe.

Japp tut es, hättet ihr ja selber leicht ausprobieren können :stupid:


Ich habs nur mit der Mouse.dll versucht, da wär ne möglichkeit, die Mouse mit zusätzlichem Knopfdruck auf dem Gmaepad (die haben ja reichlich davon :mrgreen: ) schneller undlangsamer=präziser steuern zu können.

Ein paar Labels haben in der Deutschen Version zu wenig Platz

Übrigens ist "Quit" und "Leftclick performs a Leftclick", etc. nicht Deutsch :tongue:


Weiter so, das wird noch was :cyclops:


Edit:
Fehlermeldung
---------------------------
Application Error
---------------------------
Exception EConvertError in module wincontrol.dll at 00007A16.
---------------------------
OK
---------------------------



Was soll man eigentlich in das Parameterfeld eintragen? :gruebel:


Edit²: Wenn man in der RadioGroupBox den Modus ändert wird er im Menü nicht verändert, andersum aber schon :roteyes:

Hybrid666 16. Feb 2009 12:23

Re: JoyToAny - Alles mit dem Joystick
 
Hui, gibt ja doch ein Feedback.

Also zuerst mal zur Frage obs mit GamePads auch geht, die schon gesagt, JA, es geht mit allem was windows unter GameController erkennt.

Zu den unschönheiten von sx2008

ich habs mir zu herzen genommen, aufräumarbeiten sind im gange. danke!

Zum Fehler von Sunlight7:
Geh ich richtig in der annahme das du Windows Vista nutzt? Bei vielen macht die wincontrol da zicken. der Parameter ist optional, kommt drauf an bei welcher funktion du gefragt hast, aber bei Volume solltest du -vol WERT angeben, um joytoany zu sagen um wieviel du die lautstärke hoch oder runtersetzten möchtest.
Und das das nicht deutsch ist weiß ich auch ;) nur find ichs schwachsinn das jede DLL eine languagefile haben sollte ;)

MfG

btw: neue version in arbeit, mit vielen neuen funktionen.

Sunlight7 16. Feb 2009 17:11

Re: JoyToAny - Alles mit dem Joystick
 
Öhm ne, ich mach um Vista nen großen Bogen und hab XP mit SP2.

Ich hätt Gestern lust gehabt, etwas in der Mouse.dll rumzupfuschen, aber auf der oben angegebenen Projektseite von SouceForge hagelts nur Fehlermeldungen.

Mikescher 16. Feb 2009 19:52

Re: JoyToAny - Alles mit dem Joystick
 
Also ich fand die Idee von dem Progg genial (auch schon von den älteren Versionen :mrgreen: ).

Als ich dann aber dem Button1 eine Funktion zuweisen wollte eröffnete sich das erste Probleme er erkannte dauernd eine (für mich nicht sichtbare darum vermutlich minimale) Bewegung der R-Achse

=> Ich konnte Button 1 gar nicht anklicken da er immer wieder zu Achse R springt.

Nach einer Weile (und viel Klebeband) habe ich es dann geschafft dass die R-Achse endlich ruhig hält.

Als ich jetzt aber die Funktion PressKey in der Keboard.dll mit dem Parameter H setze und Button 1 drückte kam eine sehr "schöne" Fehlermeldung:
Zitat:

Exception EConvertError in Module Keyboard.dll at 000079F2
Ich werde jetzt die anderen DLL's auch noch testen

MfG Mikescher
__________________________________________________ __________________________

EDIT: Also die mouse.dll funktioniert und ist echt krass :coder: :mrgreen: (ich glaub ich werf meine maus weg :lol: )
__________________________________________________ __________________________

EDIT²: Was mir auch grad auffällt selbst mit deutscher Language File sind die Funktionsinformationen auf Englisch.
__________________________________________________ __________________________

EDIT³: Ach ja und noch was :mrgreen: : Mit der Mouse.dll kann man das Programm (JoyToAny) nicht selbst beenden (ist igendwo verständlich aber auch ein wenig verwirrend :-D )Dieser Edit wurde allein mit dem Joystick gemacht :-D

Hybrid666 17. Feb 2009 01:37

Re: JoyToAny - Alles mit dem Joystick
 
ja das SF spinnt hab ich auch gesehen, geh einfach auf www.sourceforge.net und gib in der suche joytoany ein, dann scheint alles zu gehen.

@mikescher: Das sollte eigentlich behoben sein, aber versuch einfach mal die deadzones anzuheben, falls es als slider definiert ist, definier es um als achse!

Und das mim keyboard ist klar, da muss was anderes reingeschrieben werden, es gibt da eine Funktion setkey oder so (sorry, das hat jayeff geschrieben, kenn mich da net 100% aus) und damit kannste dann die editbox editieren, einfach das setkey auf nen anderen button legen, den button gedrückt halten während du eine taste auf der tastatur drückst, dann wird der parameter korrekt gesetzt, geht auch mit kombinationen.
Zitat:

EDIT: Also die mouse.dll funktioniert und ist echt krass (ich glaub ich werf meine maus weg Laughing )
--> danke
Zitat:

EDIT²: Was mir auch grad auffällt selbst mit deutscher Language File sind die Funktionsinformationen auf Englisch.
--> ja, da ichs für sinnlos halte das jedes einzelne plugin ne languagefile braucht ;)

Zitat:

EDIT³: Ach ja und noch was : Mit der Mouse.dll kann man das Programm (JoyToAny) nicht selbst beenden (ist igendwo verständlich aber auch ein wenig verwirrend Very Happy )Dieser Edit wurde allein mit dem Joystick gemacht Very Happy
--> ich kann mir selbst auch nicht erklären wieso, aber das einzige was bei mir damit nicht geht ist das minimieren ;)

MfG

JayEff 17. Feb 2009 01:49

Re: JoyToAny - Alles mit dem Joystick
 
Zitat:

Zitat von Hybrid666
Und das mim keyboard ist klar, da muss was anderes reingeschrieben werden, es gibt da eine Funktion setkey oder so (sorry, das hat jayeff geschrieben, kenn mich da net 100% aus)

*einklink* :D
Also das funktioniert folgendermaßen:
in dem Moment, in dem die Funktion GetKey aufgerufen wird, werden alle gedrückten Tasten in einer für PressKey lesbaren weise ins Parameterfeld von JoyToAny geschrieben.
Man führt also folgende Schritte aus:

1. GetKey auf einen Button legen (Button "A" ;) )
2. JoyToAny auf Active stellen
3. Einen Button in der Liste auswählen, der den Tastendruck durchführen soll, PressKey in der DropDown Liste auswählen
4. beliebige Tasten auf der Tastatur gedrückt halten und nun Button "A" drücken.

Im Parameterfeld sollte nun eine mit + getrennte folge von Buttons stehen :) Ein Klick auf "Set funktion to Control" beendet das Ganze.

Man sollte dazu sagen: Während man beliebige Tasten auf der Tastatur drückt, sollte das Edit Feld nicht den fokus haben. Wenn man Alt+F4 drücken will, sollte JoyToAny nicht den fokus haben :mrgreen:
Schritt 4 kann auch in umgekehrter Reihenfolge durchgeführt werden, aber Button "A" muss losgelassen werden, bevor die Tasten auf der Tastatur losgelassen werden, sonst wird das Parameterfeld mit den Tasten die grad gedrückt werden, überschrieben, also mit garnix :)

Hybrid666 17. Feb 2009 01:56

Re: JoyToAny - Alles mit dem Joystick
 
Liste der Anhänge anzeigen (Anzahl: 1)
was ich noch anfügen wollte:

Wenn ihr lust habt plugins zu schreiben (WIR SIND SEHR DANKBAR DAFÜR!) oder codeverbesserungen zu machen (auch dafür sind wir dankbar) dann gibbet hier ma eine vorab version von meinem plugin tutorial als PDF im anhang!

MfG

P.S.: Hier ein funktionierender SF link: http://sourceforge.net/projects/joytoany/

angos 17. Feb 2009 19:22

Re: JoyToAny - Alles mit dem Joystick
 
Herrliches Tool :)

Danke dafür :thumb:

habs hier zuhaus auf meinem vista64 home premium problemlos ans laufen gebracht. das einzige was ich irgendwie nicht hin bekomme, ist das zuweisen von tasten über das keyboard plugin

[Edit] Wunschliste:
- Mausrad sollte im Mouseplugin konfigurierbar sein
- Mausgeschwindigkeit durch gedrückthalten einer Taste änderbar

Gruß
Ansgar

Sunlight7 18. Feb 2009 01:46

Re: JoyToAny - Alles mit dem Joystick
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich bau grad die Mouse.dll neu auf und hab ewig gesucht, warum da dauernd AVs kommen...
Muß das sein, wenn ich eine Funktion MouseMove nenne, das das Programm dann nach einem mousemove Export sucht? :roll:


Wenn man auf Funktion koppeln klickt, aber keine auswählt und dann im aktiven Modus diese betätigen will:
Fehlermeldung
---------------------------
JoyToAny
---------------------------
Access violation at address 00000000. Read of address 00000000.
---------------------------
OK
---------------------------



Edit:

So, hier das Ergebnis des komplett neu aufgebautem PlugIns zum betrachten, ich hoffe, es ist keiner abergläubisch, es sind 13 (mehr oder weniger brauchbare) Funktionen implementiert :mrgreen:

Um diese Zeit bin ich zu bequem, die Funktionen aufzulisten, also hier ein Auszug :mrgreen:
Delphi-Quellcode:
  Commands:Array[0..12] of String=('LeftClick', 'RightClick', 'LeftDoubleClick', 'SlowMouse', 'SpeedMouse', 'CenterCursor', 'SaveCursorPos', 'RestoreCursorPos', 'SetCursorPos', // Buttons
'MouseVertical', 'MouseHorizontal', 'MouseWheel', // Axis
'MouseMove'); // POV

Micha88 18. Feb 2009 10:49

Re: JoyToAny - Alles mit dem Joystick
 
Eine andere Frage, nur zum Verständnis:

Was heißt .. von scratch neu geschrieben ?

himitsu 18. Feb 2009 11:01

Re: JoyToAny - Alles mit dem Joystick
 
ich würde mal sowas vermuten > scratch,
auch wenn ich mal denk, das nicht gerade dieser scratch gemeint ist :roll:

also "scratch" hatte mal was geschrieben und die haben es "nachgebaut"

JayEff 18. Feb 2009 11:21

Re: JoyToAny - Alles mit dem Joystick
 
"von scratch" heißt "von grund auf", "scratch" im sinne von "skizze", also nochmal ganz von Anfang anfangen ;)

Danke vielmals für das neue Mouse Plugin! Echt klasse, das engagement. Sobald ich mit Lernen auf die Info Prüfung fertig bin, werd ich's testen und bei uns auf die Seite packen :D

Hybrid666 18. Feb 2009 13:21

Re: JoyToAny - Alles mit dem Joystick
 
Zitat:

Zitat von Sunlight7
Ich bau grad die Mouse.dll neu auf und hab ewig gesucht, warum da dauernd AVs kommen...
Muß das sein, wenn ich eine Funktion MouseMove nenne, das das Programm dann nach einem mousemove Export sucht? :roll:


Wenn man auf Funktion koppeln klickt, aber keine auswählt und dann im aktiven Modus diese betätigen will:
Fehlermeldung
---------------------------
JoyToAny
---------------------------
Access violation at address 00000000. Read of address 00000000.
---------------------------
OK
---------------------------



Edit:

So, hier das Ergebnis des komplett neu aufgebautem PlugIns zum betrachten, ich hoffe, es ist keiner abergläubisch, es sind 13 (mehr oder weniger brauchbare) Funktionen implementiert :mrgreen:

Um diese Zeit bin ich zu bequem, die Funktionen aufzulisten, also hier ein Auszug :mrgreen:
Delphi-Quellcode:
  Commands:Array[0..12] of String=('LeftClick', 'RightClick', 'LeftDoubleClick', 'SlowMouse', 'SpeedMouse', 'CenterCursor', 'SaveCursorPos', 'RestoreCursorPos', 'SetCursorPos', // Buttons
'MouseVertical', 'MouseHorizontal', 'MouseWheel', // Axis
'MouseMove'); // POV

Also, im tutorial steht das drin, aber ich weiß net obs so ganz verständlich ist:

Alle Funktionsnamen und die exports müssen KOMPLETT lowercase sein, in getbuttonfunc usw (also im returnwert) könnt ihr groß und kleinschreibung machen wie ihr wollt (das zeigt joytoany dann auch so an) da der returnwert beim aufruf nacher sowieso zu lower konvertiert wird.

Also einfach alle funktionsnamen und exports kleinchreiben im code!

MfG

P.S.: Von Scratch iss son ausdruck, es ist komplett neu geschrieben, ich hatte davor ja JOyMedia hier in Freeware veröffentlicht und anstatt das zu verbessern und alles bugs rauszumachen, haben JayEff und ich lieber nochmal neu angefangen, JoyMedia ist von der struktur her, naja, sehr bescheiden. in joytoany haben wir z.B. das sharemem problem,welches joymedia hatte auf die reihe bekommen usw.

P.P.S:
Ein neues Plugin ist verfügbar, joytoany.dll. Momentan leider nur als source auf dem SVN server der sourceforge seite. Wenn man mehrer Profile in JoyToAny hat kann man damit per tastendruck die Profile wechseln. Und bald ist die 1.0 von joytoany fertig! viele viele neue funktionen und viel viel weniger bugs ;)

Sunlight7 18. Feb 2009 14:27

Re: JoyToAny - Alles mit dem Joystick
 
Ich hatte das so aufgefasst, das nur die fixen Exoprte klein zu schreiben sind, denn Sinn, das PlugIn eigene Funktionen auf kleinschreibung getrimmt werden verstehe ich nicht.

Zitat:

Zitat von Tutorial
Im Returnwert muss kann man die Prozedurnamen der
Übersichtlichkeit halber groß schreiben, ...

Muß man, oder kann man? :mrgreen:

Zitat:

Zitat von Tutorial
Was ihr des weiteren beachten solltet ist das export am
Ende jedes Prozedural, welches angibt, das diese Funktion von außen aufrufbar sein soll (alle nicht
exportierten Funktionen und Prozeduren sind dann DLL intern und können von außen nicht
aufgerufen werden).

Export kann man angeben, muß aber nicht, da sowieso über die Exports Klausel am Ende exportiert wird.


Im Tutorial wird oft GetParamValue verwendet, aber nicht erklärt, wo das herkommt ;)

Wunschliste:
- Leerzeichen in der getbuttonfunc etc. erlauben, sieht für den Anwender in der ComboBox dann schöner aus, kannste ja im Programm rausfiltern. ;)
- Eine Versionsangabe ins PlugIn übergeben, bzw. dessen Version abfragen. Hilft Dir später bei PlugIn erweiterungen
- Eine ID für die ausgewählte Sprache, so kann man die Infos m PlugIn mehrsprachig gestallten, ersparrt eineextra .lng Datei
- Verwende im Tut Konstanten für State, das machts für Anfänger leichter lesbar, zb ButtonDown=0; ButtonPressed=1; ButtonUp=2;
- Einen Init Aufruf des PlugIns, in dem dann gleich Version und Sprch ID etc. übergeben werden.

Hybrid666 18. Feb 2009 22:15

Re: JoyToAny - Alles mit dem Joystick
 
kann man, sorry ;)
Zitat:

- Leerzeichen in der getbuttonfunc etc. erlauben, sieht für den Anwender in der ComboBox dann schöner aus, kannste ja im Programm rausfiltern. Wink
ist ein guter vorschlag, werd ich in der nächsten version beachten ;) kommt auf die todo --> DONE

Zitat:

- Eine Versionsangabe ins PlugIn übergeben, bzw. dessen Version abfragen. Hilft Dir später bei PlugIn erweiterungen
Sowas in der art hab ich mir auch überlegt, ist auch ma auf der todo, aber vorerst als unwichtig --> DONE
Zitat:

- Eine ID für die ausgewählte Sprache, so kann man die Infos m PlugIn mehrsprachig gestallten, ersparrt eineextra .lng Datei
auch ein sehr guter vorschlag, ist auch auf der todo
Zitat:

- Verwende im Tut Konstanten für State, das machts für Anfänger leichter lesbar, zb ButtonDown=0; ButtonPressed=1; ButtonUp=2;
werde ich die tage korrigieren

Zitat:

- Einen Init Aufruf des PlugIns, in dem dann gleich Version und Sprch ID etc. übergeben werden.
sprache werd ich anders regeln, version werd ich machen --> DONE

danke für die vorschläge!

und wenn du nix dagegen hast werd ich im nächsten release dein mouseplugin mitliefern ;) wenn du willst kann ich auch den source (mit copyright natürlich) ins SVN repo laden!

Werd ich in der 1.0 beachten (was den release allerdings ein klein wenig rauszögern wird ;))

Hybrid666 19. Feb 2009 15:25

Re: JoyToAny - Alles mit dem Joystick
 
Liste der Anhänge anzeigen (Anzahl: 2)
Solange ihr auf die neue Version wartet, hier noch 2 mehr oder weniger nützliche plugins:

JoyToAny.dll - Damit kann man diverse dinge in joytoany ändern (zum beispiel per joyticks zwischen den profile wechseln)
foobar2000.dll - Damit kann man foobar2000 steuern

Und hier noch was euch in der 1.0 erwartet:

- Ein neuer zuweisungsbutton, welcher einen command für alle Profile setzt (nützlich für die SwitchProfile funktionen)
- Leicht geänderte und verbesserte API (praktisch falls man JTA erweitern will oder per plugins steuern)
- Einige Bugs wurden entfernt
- Die Versionszahl hat sich geändert
- Leerzeichen in den Prozedurnamen der Plugins werden unterstützt
- Neue und überarbeitete Plugins
- Und beim rest: lasst euch überraschen ;)


MfG

Sunlight7 19. Feb 2009 21:53

Re: JoyToAny - Alles mit dem Joystick
 
Liste der Anhänge anzeigen (Anzahl: 1)
So, ich war jetzt mit nem Problem beschäfftigt, daher kommt erst jetzt das vorläufige Finale.

Ich als Minimalistix hab das PlugIn nochmal optimiert und auf 18.5 KB zusammgestutzt :mrgreen:
Das Ergebnis kann im Anhang bewundert werden.
Von mir gibts keinen Open Source mehr, da ich die Copy & Paste Mendalität nicht weiter unterstüze, aber da ich das für JoyToAny gemacht hab und damit Ihr das in Euren PlugIns verwenden könnt is der Source mit dabei und Du darfst ihn veröffentlichen ;)

U.a. hab ich die endlos lange GetParamValue Funktion optimiert, bei der es jetzt egal is, ob wer "-posx123-posy245" oder "-posx123 -posy245" eingibt.
Übrigens sind Dinge wie "If BoolischeWert=True then" absolut Tabu ;)

Viel freude damit ;)

MfG, Sun

PS: Sobald das Update draußen ist zum Testen werd ich das mit den Leerzeichen Updaten, ich hab da ja was von "-> DONE" gelesen :-D

Hybrid666 19. Feb 2009 23:43

Re: JoyToAny - Alles mit dem Joystick
 
Vielen dank!

Den source MUSST du uns nicht geben ;) wir hätten dein plugin auch binär auf die jta seite gesetzt.

Ja, das mit den leerzeichen funzt soweit, und auch vieles andere.

MfG

Sunlight7 20. Feb 2009 00:20

Re: JoyToAny - Alles mit dem Joystick
 
Ihr sollt ja daraus lernen und die anderen PlugIns danach selber optimieren :mrgreen:

Hybrid666 20. Feb 2009 12:12

Re: JoyToAny - Alles mit dem Joystick
 
du regst dich im source permanent über die groß und kleinschreibung auf. das dient einfach nur der problemvermeidung. lieber was einheitliches definieren als nacher von jedem 2. gesagt bekommen das der scheiss nicht funktioniert. ;). Frag mich aber auch warum DLL Aufrufe Case Sensitive sind...

Sunlight7 20. Feb 2009 19:52

Re: JoyToAny - Alles mit dem Joystick
 
Ich reg mich nur 2 mal auf ;)

Das Exporte Case sensetiv sind ist C++ Standard.

Ich halte das für einen Fehler im Designkonzept, dem Programmierer zu zwingen alles klein zu schreiben, wobei es ein einfaches wäre mit ein paar Zeilen Code das Problem zu umgehen.
Mach Deinem Namen alle Ehre und mach es hybrid :mrgreen:

Beispiel:

Delphi-Quellcode:
function GetProcAddressCase(const hModule:HMODULE; const lpProcName:String):TFarProc;
begin
   // 1. Versuch mit originalem Namen
   Result:=GetProcAddress(hModule, PChar(lpProcName));

   If Result<>nil then Exit;

   // 2. Versuch mit kleingeschriebenem Namen
   Result:=GetProcAddress(hModule, PChar(LowerCase(lpProcName)));

   If Result<>nil then Exit;

   // 3. Versuch mit FESTSTELLTASTEN Namen
   Result:=GetProcAddress(hModule, PChar(UpperCase(lpProcName)));

   If Result<>nil then Exit;

   // Den Programmierer über den Fehler informieren, Exportfunktion nicht vorhanden oder falsch feschrieben.
   // Ich gehe mal davon aus, das der Programmierer sein PlugIn testet und auf diese Meldung reagiert.
   ShowMessage(Format('Leider wurde der Export %s nicht gefunden, etc. pp', [lpProcName]));
end;
Und schon kann jeder Programmierer in seiner üblichen schreibweise ungehindert Quelltext verfassen, es gibt ein kürzeres Tutorial und eine Fehlerquelle weniger ;)

Hybrid666 21. Feb 2009 19:05

Re: JoyToAny - Alles mit dem Joystick
 
ne also für nen fehler halt ichs nicht, sondern einfach für ne klare aussage wies zu sein hat.

hathor 22. Aug 2010 15:20

AW: JoyToAny - Alles mit dem Joystick
 
Liste der Anhänge anzeigen (Anzahl: 1)
Version: 0.5 schreibt eine fehlerhafte standard.prf.
(Nicht vorhandene Funktion in einer DLL:
[info]
exists=1
[POV]
function=
param=
plugin=itunes.dll
)
Folge: Absturz - Programm kann nur mit dem Taskmanager gekillt werden.

Version: 0.6 liest die fehlerhafte Preference-Datei.
Folge: Absturz - Programm kann nur mit dem Taskmanager gekillt werden.

Die Extension "prf" ist schlecht gewählt, denn sie ist mit Outlook verknüpft.

Aber glücklicherweise gibt es den Sourcecode - Vielen Dank dafür!!!

WizoHulk 8. Feb 2011 19:55

AW: JoyToAny - Alles mit dem Joystick
 
hallo,

weiß ja nicht ob der Thread noch aktiv ist....
Aber ich komm damit überhaupt nicht klar...
ich habe den Gamepad von der Playstation 2 dran und möchte auf einen Button das Enter legen,
geht das?
Aber ich kriege immer nur eine Fehlermeldung. Hat einer damit schon erfahrungen gemacht?

Mfg wizoHulk

himitsu 8. Feb 2011 21:50

AW: JoyToAny - Alles mit dem Joystick
 
Zitat:

Zitat von WizoHulk (Beitrag 1080402)
Aber ich kriege immer nur eine Fehlermeldung.

Wie lautet diese denn?
Und bei was kommt diese? (also was genau machst du und wo)

Schonmal versucht die entsprechende DLL zu debuggen?

Nja, aktiv ist relativ ... Hybrid666 war zwar seit 3 Monaten nicht mehr online, aber das ist noch nicht besorgniserregend, abgesehn davon daß der Quellcode ja zur Verfügung steht.

Hybrid666 28. Feb 2012 19:33

AW: JoyToAny - Alles mit dem Joystick
 
Moinsen,

sorry für die späte Antwort. Auf seite 2 glaube ich ist von JayEff ne anleitung, wies geht.

Ich hab mich von delphi komplett zurückgezogen und das Projekt ist von meiner Seite her komplett auf Eis. Mich regt mein damaliger Programmierstil auf und außerdem programmiere ich fast nurnoch in C, C++ und Assembler.

Dazu kommt noch, das ich eine sehr stark verbesserte version des Programms hatte (1.1), leider ist aber kurz vor dem SVN sync meine HDD abgeraucht und viel viel arbeit war grob gesagt im Anus ;).

Falls jemand das Projekt übernehmen möchte, kann er das gerne tun, einfach mir ne Mail schreiben an Hybrid87@gmail.com

Gruß Nidhoegger (früher Hybrid666)


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:41 Uhr.

Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf