AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte JoyMedia - Mediensteuerung über Joystick

JoyMedia - Mediensteuerung über Joystick

Ein Thema von Hybrid666 · begonnen am 5. Jan 2007 · letzter Beitrag vom 8. Dez 2008
Antwort Antwort
Seite 1 von 3  1 23   
Hybrid666
Registriert seit: 15. Jul 2006
JoyMedia - Mediensteuerung über Joystick/GamePad





JoyMedia ist ein Tool um Funktionen und Plugins auf die Tasten von euren JoySticks und GamePads legen könnt.

Funktionen:
Steuern von Programmen (u.a. Winamp, iTunes)
Schreiben eigener Plugins (wenn ihr der Sprache Delphi mächtig seid, wovon ich ausgehe ^^)
Verstecken im Tray
u.v.m.

WICHTIG: HAB HEUTE MAL EIN KLEINES DLL TUTORIAL DAFÜR GESCHRIEBEN: http://www.delphipraxis.net/internal...=917332#917332

ChangeLog:

v.0.01:
Joystick erkennung hinzugefügt
Noch keine Tastenbelegungen möglich, statisch Belegte Tasten ohne Plugin Funktion

v.0.02:
Joystick Tasten werden nun aufgelistet, erste Plugin versuche gescheitert
Plugins benötigen noch Sharemem, da strings übergeben werden
Winamp.dll hinzugefügt
Dynamische Tastenbelegungen
History eingefügt
Einstellungen werden in einer ini File gespeichert

v.0.03
Winamp Volume Command für Slider hinzugefügt
Bessere Veriablenübergabe
Schleife wird schneller abgearbeitet
Bug mit Slider behoben
Option für TrayIcon zwar da, aber noch ohne funktion

v.0.04
iTunes Plugin hinzugefügt
Minimize to Tray funktioniert
XP manifest
mehrere kleine bugs behoben

v.0.05
Plugins laufen nun über PChar (Sharemem wird in version 0.06 komplett terminiert )
Plugins umgeschrieben auf neuen Standart
Parameterfunktion um beliebige parameter an das plugin weiterzuleiten

v.0.06
Keine Fehler mehr wenn kein Joystick da ist
Bugs entfernt
Icon zum Projekt hinzugefügt
Angegebene Parameter stehen nun auch in der history
inifiles von früheren versionen werden nun converted
Versionsprüfung eingebaut um absturz durch alte ini files zu verhindern

v.0.07
Parameterübergabe funktioniert
Volume nun auch auf Buttons belegbar
DLL Struktur verändert
Mehrer arten eines Button drucks nun an DLL übergeben (Pressed, Released, Repeated)
Slider Volume Entbuggt
iTunes Plugin entfernt bis DLL auf neue Strktur umgeschrieben wurde
Mehr Parameter werden an die DLL übergeben
Mehrere kleine bugs entfernt
JOYMEDIA UNTERSTÜTZT NUN WEITESTGEHENS AUCH GAMEPORT JOYSTICKS, ALLERDINGS HABE ICH z.B. MIT MEINEM SB LIVE5.1 GAMEPORT PROBLEME, BEI FREUNDEN TUT ES ALLERDINGS MIT DEN MEISTEN JOYSTICKS UND GAMEPADS

v0.08
Bugs entfernt
Hilfe hinzugefügt
playsound.dll hinzugefügt

In bälde wird auch ein Tutorial für die DLLs folgen

In Arbeit:
- Plugins für Windows
- Plugin für Windows Media Player
- Hat Commands werden eingebaut

DOWNLOAD: Auf den Anhang verlegt

P.S.: ICH BITTE EUCH UM GEZÜGELTE KRITIK, ICH HABE ERST KÜRZLICH WIEDER MIT DELPHI ANGEFANGEN DA ICH ZWISCHENZEITLICH AUF MSL UMGESTIEGEN WAR. WER DAS PROGRAMM NUTZEN MÖCHTE ODER DLLS SCHREIBEN DER WENDET SICH EINFACH PER MAIL (Hybrid87@gmail.com) ODER ICQ (165839208) AN MICH. NUTZUNG AUF EIGENE GEFAHR.

MFG HYBRID666
Angehängte Dateien
Dateityp: zip joymedia_649.zip (730,4 KB, 24x aufgerufen)
 
Hybrid666

 
Delphi 7 Personal
 
#2
  Alt 6. Jan 2007, 17:19
bissle feedback wäre schon nett so schlecht iss das proggie au net...vorallem für gamer interessant
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

 
Delphi 2009 Professional
 
#3
  Alt 6. Jan 2007, 19:23
Ich würde dir empfehlen das Programm als Anhang anzuhängen, oder einen direkten Downloadlink + Größe hinzuzufügen.
Überigends ist die Idee nicht schlecht, aber das über ein JoyStick zu steuern
Fabian
  Mit Zitat antworten Zitat
Hybrid666

 
Delphi 7 Personal
 
#4
  Alt 7. Jan 2007, 01:00
Zitat von xZise:
Ich würde dir empfehlen das Programm als Anhang anzuhängen, oder einen direkten Downloadlink + Größe hinzuzufügen.
Überigends ist die Idee nicht schlecht, aber das über ein JoyStick zu steuern
Mit Screeny nu im anhang...danke
  Mit Zitat antworten Zitat
Benutzerbild von WordsBG
WordsBG

 
Delphi 7 Professional
 
#5
  Alt 7. Jan 2007, 17:29
Nettes Programm, WinAmp nutze ich zwar nicht (wozu auch iTunes 4 life), aber sieht gut aus. Wenn du iTunes Support einbauen willst kannst du das über Windows COM-Obejkte machen (Google: "iTunes COM", sollte Apple mit nem Download zur beschreibung ankommen). Hab mit grad sowas mal selbst quick-n-dirty gemacht. Ich war mir nicht sicher über Delphi + COM, deshalb hier ShellExecute mit JavaScript.

btw: AChtung. Startet ohne sichtbares Window. Hoch/Runter = Track Ändern | Links/Rechts = Pause/Play (beides auf beiden Tasten)
Angehängte Dateien
Dateityp: rar tunejoy_197.rar (181,2 KB, 17x aufgerufen)
  Mit Zitat antworten Zitat
Hybrid666

 
Delphi 7 Personal
 
#6
  Alt 7. Jan 2007, 21:37
Danke für das feedback, werde mich morgen gleich an den iTunes support ranmachen und danke für das codebeispiel ich denke das das sehr weiterhelfen wird.

Wenn sonstnoch jemand wünsche offen hat dann bitte

BETA 0.03 HOCHGELADEN
iTunes Plugin ist online
@WordsBG wär nett wenn du es mal testen könntest und am besten mir auch den registry eintrag sagen könntest wo (und ob überhaupt) der pfad der exe datei von itunes gespeichert ist, damit ich auch ne start funktion einbauen kann

MfG Hybrid666
  Mit Zitat antworten Zitat
Benutzerbild von WordsBG
WordsBG

 
Delphi 7 Professional
 
#7
  Alt 8. Jan 2007, 20:19
Mhm sorry für mein als "USB Joypad" erkanntes Joypad funktioniert das ganze nicht. Nach dem einrichten geht nichts. Wenn ich neustarte bombt er mich mit massige AVs voll, selbes Ergebnis beim löschen der ini. Seltsam.

iTunes Pfad steht nicht in der Reg (zumindest bei mir).

Aber
Code:
[HKEY_CLASSES_ROOT\Applications\iTunes.exe\DefaultIcon]
@="C:\\Programme\\iTunes\\iTunes.exe,-128"
Kannst du wohl nutzen um den Pfad zu bekommen.

edit: Jatzt hab ich vergessen mein Jypad anzugeben: Ist ein techsolo TG-20
  Mit Zitat antworten Zitat
Hybrid666

 
Delphi 7 Personal
 
#8
  Alt 8. Jan 2007, 20:22
Zitat von WordsBG:
Mhm sorry für mein als "USB Joypad" erkanntes Joypad funktioniert das ganze nicht. Nach dem einrichten geht nichts. Wenn ich neustarte bombt er mich mit massige AVs voll, selbes Ergebnis beim löschen der ini. Seltsam.

iTunes Pfad steht nicht in der Reg (zumindest bei mir).

Aber
Code:
[HKEY_CLASSES_ROOT\Applications\iTunes.exe\DefaultIcon]
@="C:\\Programme\\iTunes\\iTunes.exe,-128"
Kannst du wohl nutzen um den Pfad zu bekommen.

edit: Jatzt hab ich vergessen mein Jypad anzugeben: Ist ein techsolo TG-20
hmmmm das prob iss mir neu, kannste vllt nen screenshot posten? klickst du auch immer Set Functgion to button? hast du die version die ich erst neulicht von itunes.dll hochgeladen hab? weil die alte ging net...

und dann noch ne frage:

Delphi-Quellcode:
function volumeup()
{
iTunesApp.SoundVolume = iTunesApp.SoundVolume+ 10;
}

function volumedown()
{
iTunesApp.SoundVolume = iTunesApp.SoundVolume- 10;
}
hast du ne ahnung ob ich für die volume auch nen konkreten wert angeben kann? und wie? (ich kenn mich mit JS net aus)

Hab iTunes grade auch instaliert und bei mir ghets eig. wunderbar...

MfG Hybrid666
  Mit Zitat antworten Zitat
Benutzerbild von WordsBG
WordsBG

 
Delphi 7 Professional
 
#9
  Alt 8. Jan 2007, 22:38
Zitat von Hybrid666:
Delphi-Quellcode:
function volumeup()
{
iTunesApp.SoundVolume = iTunesApp.SoundVolume+ 10;
}

function volumedown()
{
iTunesApp.SoundVolume = iTunesApp.SoundVolume- 10;
}
hast du ne ahnung ob ich für die volume auch nen konkreten wert angeben kann? und wie? (ich kenn mich mit JS net aus)
Hab iTunes grade auch instaliert und bei mir ghets eig. wunderbar...
Ah JETZT Geht es. Erst einstellen, schauen das iTunes zwischendrin neugestartet wird (bzw. beendet wird) und dann Play (Öffnet es gegebenfalls auch neu). Dann geht es einwandfrei.

Der Obengenannte Code funktioniert bei mir, kA was du noch willst. Alternativ könntest du soweit ich mich erinnere auch "iTunesApp.SoundVolume += 10;" schreiben, JavaScript sollte das, wie auch PHP usw. unterstützen.

edit: Btw: Mach das Fenster mal nicht resizebar, bau das MinimizeToTray ein und positioniere es am Betsen in der Mitte des Screens (Stickwort: Position von TForm), dann sollte das Programm ready4users sein.

Für XP-User ist auch XP-Style fast pflicht. In Delphi 6 kannst du das mit den Manifest-Files tun.

Code:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
   version="1.0.0.0"
   processorArchitecture="X86"
   name="Time-Organizer"
   type="win32"
/>
<description>Time-Organizer fuer WinXP</description>
<dependency>
   <dependentAssembly>
       <assemblyIdentity
           type="win32"
           name="Microsoft.Windows.Common-Controls"
           version="6.0.0.0"
           processorArchitecture="X86"
           publicKeyToken="6595b64144ccf1df"
           language="*"
       />
   </dependentAssembly>
</dependency>
</assembly>
als exename.manifest

und evt. in die exe linken. Siehe: http://dsdt.info/tipps/?id=466

edit2: ComboBoxen mit csDropDownList als Style sind auch besser. Sonst denkt man als User man müsste da was eingeben.
  Mit Zitat antworten Zitat
Hybrid666

 
Delphi 7 Personal
 
#10
  Alt 9. Jan 2007, 14:40
Zitat von WordsBG:
Zitat von Hybrid666:
Delphi-Quellcode:
function volumeup()
{
iTunesApp.SoundVolume = iTunesApp.SoundVolume+ 10;
}

function volumedown()
{
iTunesApp.SoundVolume = iTunesApp.SoundVolume- 10;
}
hast du ne ahnung ob ich für die volume auch nen konkreten wert angeben kann? und wie? (ich kenn mich mit JS net aus)
Hab iTunes grade auch instaliert und bei mir ghets eig. wunderbar...
Ah JETZT Geht es. Erst einstellen, schauen das iTunes zwischendrin neugestartet wird (bzw. beendet wird) und dann Play (Öffnet es gegebenfalls auch neu). Dann geht es einwandfrei.

Der Obengenannte Code funktioniert bei mir, kA was du noch willst. Alternativ könntest du soweit ich mich erinnere auch "iTunesApp.SoundVolume += 10;" schreiben, JavaScript sollte das, wie auch PHP usw. unterstützen.

edit: Btw: Mach das Fenster mal nicht resizebar, bau das MinimizeToTray ein und positioniere es am Betsen in der Mitte des Screens (Stickwort: Position von TForm), dann sollte das Programm ready4users sein.

Für XP-User ist auch XP-Style fast pflicht. In Delphi 6 kannst du das mit den Manifest-Files tun.

Code:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
   version="1.0.0.0"
   processorArchitecture="X86"
   name="Time-Organizer"
   type="win32"
/>
<description>Time-Organizer fuer WinXP</description>
<dependency>
   <dependentAssembly>
       <assemblyIdentity
           type="win32"
           name="Microsoft.Windows.Common-Controls"
           version="6.0.0.0"
           processorArchitecture="X86"
           publicKeyToken="6595b64144ccf1df"
           language="*"
       />
   </dependentAssembly>
</dependency>
</assembly>
als exename.manifest

und evt. in die exe linken. Siehe: http://dsdt.info/tipps/?id=466

edit2: ComboBoxen mit csDropDownList als Style sind auch besser. Sonst denkt man als User man müsste da was eingeben.
hehe vilen dank erstmal ich werkel da dran rum und wie gesagt ist das grade die beta, da geht es mir nicht um aussehen xD aber das kommt alles noch, momentan will ich nur dasses richtig läuft.

und was ich mit dem java ding machen will ist das gelcihe wie bei winamp: volume control auf den slider legen, das iss echt genial.

MfG und danke Hybrid666
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:16 Uhr.
Powered by vBulletin® Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2019 by Daniel R. Wolf