Avatar billede lolle Nybegynder
07. november 2001 - 16:51 Der er 8 kommentarer og
1 løsning

winamp & ext app

Jeg er ved at lave et program som kan styre winamp!

Men nu står der en LILLE mur som jeg ikke kan komme forbi! Det er fordi jeg gerne vil høre om der er nogen som ved hvordan man kan får det filnavn og path som winamp spiller \"lige nu\" fra et ext app! Jeg har kigget hele deres developer side / sdk igennem men der er der kun om hvordan man kan få filnavnet til et plugin!

Er der nogen som har et eksemple på detter eller kan man ikke gøre det fra et ext app?
Avatar billede borrisholt Novice
08. november 2001 - 08:56 #1
Avatar billede lolle Nybegynder
08. november 2001 - 15:16 #2
Weeeeh tak man det var lige det jeg skulle bruge eller næsten jeg skulle finde Artist/Title og det finder den ved caption fra winamp!

Men Jens!
Kan du ik lige hjælpe med noget mere?
I koden neden for sletter den kun \"- winamp\" men jeg vil os godt ha den til at slette de tal som står foran! Altså det er det tal/id som sangen har efter hvilket nummer den er i winamp\'s playlist!

Jeg ved ik hvordan jeg skal gøre det da det nummer kan være \"1. \"/\"12. \"/\"123. \"/\"1234. \" osv.. gør du ? jeg vil os gerne ha sletter . og mellemrum (\"tal. \")!

function WhatsPlaying:String;
var
TitleLen,TempInt: integer;
TempStr: String;
begin
  GethWnd_Winamp;
  TempStr := \'Winamp isn\'\'t running\';

  if hwnd_winamp <> 0 then begin //Get wHnd text
    TitleLen := GetWindowTextLength(hwnd_winamp)+2;
    SetLength(TempStr,TitleLen);
    GetWindowText(hwnd_winamp,Pchar(TempStr),TitleLen);
    SetLength(TempStr,Length(TempStr));
    //Remove \'- Winamp\' part
    TempInt := Pos(\'- Winamp\',TempStr);
    TempStr := Copy(TempStr,0,TempInt -2);
  end;
  result := TempStr;
end;
Avatar billede delphi Nybegynder
09. november 2001 - 11:25 #3
function WhatsPlaying:String;
var
TitleLen,TempInt: integer;
TempStr: String;
begin
  GethWnd_Winamp;
  TempStr := \'Winamp isn\'\'t running\';

  if hwnd_winamp <> 0 then begin //Get wHnd text
    TitleLen := GetWindowTextLength(hwnd_winamp)+2;
    SetLength(TempStr,TitleLen);
    GetWindowText(hwnd_winamp,Pchar(TempStr),TitleLen);
    SetLength(TempStr,Length(TempStr));
    //Remove \'- Winamp\' part
    TempInt := Pos(\'- Winamp\',TempStr);


-->    TempStr := Copy(TempStr,0,TempInt -2);

Ændres til:
 
  TempStr := Copy(TempStr, Pos(\'.\', TempStr)+2, TempInt-2);


  end;
  result := TempStr;
end


Peter
Avatar billede borrisholt Novice
09. november 2001 - 11:28 #4
Jammen hej Peter

Er der stadig liv (vrinsk) i dig ?

Jens B
Avatar billede delphi Nybegynder
09. november 2001 - 11:37 #5
Kort fortalt, uden at kende en dyt til WinAmp:

Din forklaring:

>\"1. \"/\"12. \"/\"123. \"/\"1234. \" osv.. gør du ?
>jeg vil os gerne ha sletter . og mellemrum (\"tal. \")!

Du vil med andre ord have slettet alt hvad der kommer fra starten af linien (pos 0) til og med første punktum og det efter følgende mellemrum:

>TempStr := Copy(TempStr, Pos(\'.\', TempStr)+2, TempInt-2);

Pos(\'.\', TempStr) er positionen på det første punktum i strengen. 

Pos(\'.\', TempStr)+2 er positionen på det bogstav der kommer to pladser efter punktummet.



hmm... ved nærmere efter tanke: Nu får du for meget med!

>TempStr := Copy(TempStr, Pos(\'.\', TempStr)+2, TempInt-2);
skal ændres til noget i retning af:

TempStr := Copy(TempStr, Pos(\'.\', TempStr)+2, TempInt-2-(Pos(\'.\', TempStr)+2));

Mere overskueligt:

Var
  FirstCharAfterPunkt : Integer;
Begin
  .
  .
  FirstCharAfterPunkt := Pos(\'.\', TempStr)+2;
  TempInt := Pos(\'- Winamp\', tempStr) - 2;  // Er faktisk LastWantedChar-pos.

  TempStr := Copy(TempStr, FirstCharAfterPunkt, TempInt - FirstCharAfterPunkt +1);
  .
  .


Peter

 
Avatar billede delphi Nybegynder
09. november 2001 - 11:38 #6
Lidt vrinsk... jeg sad lige og følte behov for lidt afkobling.  Jeg har siddet på arbejde fra kl 8.00 til 23.30 den sidste uges tid.  Det er lidt trals!

Peter
Avatar billede lolle Nybegynder
09. november 2001 - 13:35 #7
Tak til jeg begge for det er lige det jeg skulle bruge!
Avatar billede lolle Nybegynder
09. november 2001 - 13:35 #8
delphi vil du os ha 30 point så svar lige!
Avatar billede delphi Nybegynder
09. november 2001 - 13:38 #9
Jeg klare mig nok - æd dem selv.

Peter
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester