Laden...

Winamp

Erstellt von cwer vor 18 Jahren Letzter Beitrag vor 18 Jahren 2.402 Views
C
cwer Themenstarter:in
11 Beiträge seit 2005
vor 18 Jahren
Winamp

Hallo,

ich suche irgendein Weg auf Winamp zuzugreifen (Dateien in Playlist hinzufügen, Play, Pause...).
Bin für jede Hilfe dankbar.

 mfg Christoph
49.485 Beiträge seit 2005
vor 18 Jahren

Hallo cwer,

hinzufügen geht schon u.a. schon mal so:


Process p = new Process();
p.StartInfo.FileName = @"c:\\Programme\\Winamp\\winamp.exe";
p.StartInfo.Arguments = "/add "+ file;
p.Start ();

herbivore

C
cwer Themenstarter:in
11 Beiträge seit 2005
vor 18 Jahren

Danke für die schnelle Antwort, aber es scheint so als komme dieser Befehl nicht mit
Leerzeichen zurecht. Also im Dateinamen dürfen keine Leerzeichen vorkommen sonst interpretiert das Winamp als mehrere Dateien.

  mfg Christoph
140 Beiträge seit 2004
vor 18 Jahren

Also habs jetzt nur direkt von der Shell aus getestet, aber da reicht es wenn man denn Dateinamen in Anführungszeichen setzt und er hält es für eine Datei.

Müsste dann wohl so im Code aussehen:


p.StartInfo.Arguments = "/add "+ "\"" + file + "\"";

95 Beiträge seit 2005
vor 18 Jahren

Fall du eine Winamp Steuerung über die Window Messages machen willst findest du hier eine überblick über die Messages die du schicken kannst. Winamp SDK

Weiterhin findest du beim Code Projekt ein Tutorial wie du die Window Message mit Winamp benutzen kannst. Das Beispiel ist zwar nur um den Song Title rauszubekommen, aber ich glaube das läßt sich gut ableiten.

Gruß

LordK

Programmieren in C# hält die grauen Zellen am Leben.
Es schärft alle fünf Sinne: den Schwachsinn, den Blödsinn, den Wahnsinn, den Unsinn und den Stumpfsinn.

C
cwer Themenstarter:in
11 Beiträge seit 2005
vor 18 Jahren

Danke für die Antworten, werde ich gleich mal ausprobieren.

MfG Christoph

-
885 Beiträge seit 2004
vor 18 Jahren

@cwer: Wäre schön, wenn du zukünftig mal dein Thema etwas genauer definierst als einfach nur "Winamp" das Schlüsselwort Steuererung oder Zugriff hätte viel bewirkt.

I
53 Beiträge seit 2005
vor 18 Jahren

Zusatzfrage : wie kann mein Programm herausfinden, in welchem verzeichnis winamp installiert ist ?

-
885 Beiträge seit 2004
vor 18 Jahren

Ich weiß nicht ob es ne Suchmethode gibt, aber wenn nicht, könntest du einfach alle Verzeichnisse nach der exe durchsuchen (dauert bestimmt ewig) - wie das wohl andre machen?!

B
119 Beiträge seit 2005
vor 18 Jahren

Zusatzfrage : wie kann mein Programm herausfinden, in welchem verzeichnis winamp installiert ist ?

Zum Beispiel über WMI:


public static string GetSoftwareLocation(string name) {
	ManagementClass productClass  = new ManagementClass("Win32_Product");

	foreach(ManagementObject product in productClass.GetInstances()) {
		string productName = (string)product.GetPropertyValue("Name");
		if (productName.Contains(name)) {
			return (string)product.GetPropertyValue("InstallLocation"); ;
		}
	}

	return null;
}

Hat bei mir zumindestens mal mit Adobe Reader und Kaspersky
funktioniert, mit mehr hab ich es dann auch nicht mehr getestet.
Ich habe nämlich Winamp nicht installiert ..

grüße

49.485 Beiträge seit 2005
vor 18 Jahren

Hallo ikarus7,

brute-force aber simpel wäre aus der Registry den Wert von

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Winamp.File\shell\open\command

auszulesen.

herbivore

I
53 Beiträge seit 2005
vor 18 Jahren

ok, zwei fragen :

  1. was muss ich noch einbinden um WMI nutzen zu können,

  2. wie lese ich einen solchen Registrystring aus ? konnte das bisher nur mit Delphi ...

49.485 Beiträge seit 2005
vor 18 Jahren

Hallo ikarus7,

zu 1. Such mal im Forum nach WMI. Da solltest du alles nötige finden.

zu 2. siehe Registry

herbivore