Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Sonstige Fragen » C# Media Player Problem » Antwort erstellen » Hallo Gast [Anmelden|Registrieren]

Antwort erstellen
Benutzername: (du bist nicht eingeloggt!)
Thema:
Nachricht:

HTML ist nicht erlaubt
BBCode ist erlaubt
Smilies sind erlaubt
Bilder sind erlaubt

Smilies: 21 von 33
smileWinkDaumen hoch
verwirrtAugenzwinkerngeschockt
Mit ZungeGottunglücklich
Forum Kloppebösegroßes Grinsen
TanzentraurigProst
TeufelSpamWillkommen
LehrerLOL HammerZunge raus
Hilfe 
aktuellen Tag schließen
alle Tags schließen
fettgedruckter Textkursiver Textunterstrichener Text zentrierter Text Hyperlink einfügenE-Mail-Adresse einfügenBild einfügen Zitat einfügenListe erstellen CODE einfügenPHP CODE farbig hervorheben
Spamschutz:
Text aus Bild eingeben
Spamschutz

Die letzten 10 Beiträge
Karlito

Neues Form war gemeint.
InformaTiger

Du meinst es soll ein MDI- Container werden?

Edit: Oder ne neue Form?

Lg
InformaTiger
Karlito

Hallo,

ich weiß nicht ob dir das passt, aber du kannst ja in einem Programm auch mehrere Fenster erstellen. So könntest du auch ein Mediaplayer-Fenster und ein Steuerfenster erstellen. Vlt reicht das schon?

VG,

Karlito
InformaTiger

Okay.
Dankeschön.

Ich werde das dann mal lieber unterlassen das mit "Hacks" und so ist dann wircklich nicht meine Sache...

großes Grinsen

Lg
InformaTiger
Karlito

Ich stimme Airblader zu. Weiterhin sind bei modernen Betriebssystemen die Speicherbereiche von Programmen voneinander getrennt. Das geht so weit, dass jedes Programm normalerweise denkt, dass es den gesamten Hauptspeicher für sich hat. Ein Zugriff auf den Speicher eines anderen Programmes wird normalerweise vom Betriebssystem verhindert und ist nur mit sehr speziellen Mitteln und erweiterten Rechten, die wie Airblader schon sagt als Hacks gelten, möglich.

Die Verwendung von von Tastenkombinationen ist hier noch das einfachste. Das Manipulieren des Speichers oder Aufrufen von Funktionen innerhalb anderer Programme übersteigt auch meine Kenntnisse um Weiten.

VG,

Karlito
Airblader

Möglich ist sowas schon, auch abseits von Tastenkombinationen. Wenn du besagtes anderes Programm aber nicht selbst geschrieben hast, d.h. keine entsprechende Schnittstelle zur Verfügung stellen kannst, bewegst du dich schnell im Bereich von "Hacks".

Ein gutes Beispiel ist Minesweeper unter Windows. Es gibt Bots, die wie ein Mensch einfach strategisch spielen (d.h. sie können nur sicher gewinnen, wenn das Spiel nicht vom Glück abhängt) und die Maus programmatisch bedienen.
Andere Bots wiederum lesen den Speicher des Programms aus und manipulieren ihn, d.h. sie gewinnen auch dann, wenn das Spiel nur mit Glück lösbar wäre.

Solche Dinge sind prinzipiell auch für deinen Playerr denkbar, wenn man z.B. den Speicher manipuliert. Das sind aber schon echt fortgeschrittene Methoden, die auch weit abseits jeglicher "Best Practices" liegen (man spielt nicht mit dem Speicher anderer Anwendungen, wenn diese dafür keine Schnittstelle zur Verfügung stellen).

Letztlich kenne ich mich damit aus alten Zeiten auch nur sehr, sehr oberflächlich aus. Sollte nur als Zusatzinformation dienen, zu empfehlen ist dieser Weg definitiv nicht.
Karlito

Hallo,

Du könntest versuchen, den Mediaplayer mit Tastenkombinationen zu befeuern. Ich denke dazu muss das Fenster aktiviert werden und danach müssen die Tastenkombinationen simuliert werden. Gemacht habe ich soetwas noch nicht und ich weiß auch nicht inwieweit soetwas noch möglich ist.
Ich kann mir vorstellen, dass das von Windows nicht (mehr) zugelassen ist, da es ein Sicherheitsrisiko darstellt.
Wenn ich dazu komme werde ich morgen mal ein wenig googeln.

VG,

Karlito
InformaTiger

Was ich allerding noch nachfragen wollte:

Ist es also nie möglich aus einem andern Code einen Player Fernzusteuern? Weil im groben wollte ich den Code des MediaPlayers von dem der Main - Form trennen... verwirrt

Danke. Daumen hoch

Lg
InformaTiger
InformaTiger

Ok, hab ich versucht.
Hat funktioniert... smile

Das Problem war eben dass durch das Objekt ein neuer Player erstellt wurde anstatt der alte Player gestoppt.

Die Lösung dazu war dann den MediaPlayerVerbindung's Code auf die normale Main - Form in der das ganze Programm abläuft zu übertragen. Seit da funktionierts.

großes Grinsen

Lg
InformaTiger
eulerscheZahl

Wie Karlito schon sagte: du erzeugst ein neues Objekt, das von deinem ersten Mediaplayer nichts weiß, wie soll das dann die Wiedergabe stoppen/die Lautstärke ändern?

Um sagen zu können, wie es richtig geht, musst du schon etwas mehr Code zeigen.
Aber du wirst an irgendeiner Stelle haben
MediaPlayerVerbindung bla = new MediaPlayerVerbindung();
bla.Play();
dann musst du auch machen
bla.Stop();
statt einen neuen Player zu erzeugen.
Es sind weitere Beiträge zu diesem Thema vorhanden. Klicken Sie hier, um sich alle Beiträge anzusehen.