Olá pessoal estou tentando fazer um programa em java que faz o seguinte :
- pega a musica e album do WMP ou i-tunes e joga no messenger…
porém estou com uns problemas porque um problema leva a outros , estava procurando por HWND que controla uma aplicação atravéz da dll win32 e talz, porém não sei mecher com dll , ja peguei varios códigos na net porém nao consigo entender direito
vou postar um código aí voces me ajudam se for possível vlw ae
package wacon;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class WinampController {
static {
System.load("c:\\projetos\\winampcontroller\\src\\wacon\\wacon.dll"); // não entendo o que isso faz
}
/**
* da play no winamp.
*
*/
public static native void play(); //como isso funciona? nao está declarado e o que faz o native?
/**
* da stop no winamp.
*
*/
public static native void stop();
/**
* da resume no winamp.
*
*/
public static native void resume();
/**
* da pause no winamp.
*
*/
public static native void pause();
/**
* vai para mp3 anterior.
*
*/
public static native void previousTrack();
/**
* vai para a proxima mp3
*
*/
public static native void nextTrack();
/**
* aumenta o volume.
*
*/
public static native void increaseVolume();
/**
* diminui o volume.
*
*/
public static native void decreaseVolume();
/**
* aumenta o volume.
* @param percent porcentagem a aumentar.
*/
public static native void increaseVolumePercent(int percent);
/**
* diminui o volume.
* @param percent percentagem a diminuir.
*/
public static native void decreaseVolumePercent(int percent);
/**
* ajusta o volume
* @param pos posicao do volume de 0 a 99.
*/
public static native void setVolume(int pos);
/**
* reinicia o winamp.
*
*/
public static native void restart();
/**
* vai para uma posica na playlist.
* @param pos posicao.
*/
public static native void setPlaylistPosition(int pos);
/**
* limpa a playlist.
*
*/
public static native void clearPlayList();
/**
* limpa o cache da playlist.
*
*/
public static native void clearPlayListCache();
/**
* retorna o tamanho da playlist.
* @return tamanho.
*/
public static native int getPlayListLength();
/**
* escreve a playlist em <winampdir>\\Winamp.m3u.
* @return tamanho da playlist.
*/
public static native int writePlayListToFile();
/**
* verifica se o shuffle ta on.
* @return true para on false para off.
*/
public static native boolean isShuffleStatusOn();
/**
* verifica se o repeat ta on.
* @return true para on false para off.
*/
public static native boolean isRepeatStatusOn();
/**
* liga o repeat.
* @param status true para on false para off.
*/
public static native void setRepeatStatusOn(boolean status);
/**
* liga o shuffle.
* @param status true para on false para off.
*/
public static native void setShuffleStatusOn(boolean status);
/**
* coloca um arquino na playlist
* @param mp3filename arquivo.
*/
public static native void appendToPlayList(String mp3filename);
/**
* retorna o status do winamp.
* @return 1 play 0 stop 3 pausado
*/
public static native int getStatus();
/*testes para os metodos*/
public static void main(String[] args) {
try {
while (true) {
System.out.println("\n");
System.out.println("1 play()");
System.out.println("2 stop()");
System.out.println("3 resume()");
System.out.println("4 pause()");
System.out.println("5 previousTrack()");
System.out.println("6 nextTrack()");
System.out.println("7 increaseVolume()");
System.out.println("8 decreaseVolume()");
System.out.println("9 increaseVolumePercent(50)");
System.out.println("a decreaseVolumePercent(50)");
System.out.println("b setVolume(50)");
System.out.println("c restart()");
System.out.println("d setPlaylistPosition(10)");
System.out.println("e clearPlayList()");
System.out.println("f clearPlayListCache()");
System.out.println("g getPlayListLength()");
System.out.println("h writePlayListToFile()");
System.out.println("i isShuffleStatusOn()");
System.out.println("j isRepeatStatusOn()");
System.out.println("l setRepeatStatusOn(true)");
System.out.println("m setShuffleStatusOn(true)");
System.out.println("n appendToPlayList('c:\\demo.mp3')");
System.out.println("o getStatus()");
System.out.println("p sair");
System.out.print("\n(enter)?> ");
BufferedReader reader = new BufferedReader(
new InputStreamReader(System.in));
String linha = reader.readLine();
linha = linha.toUpperCase();
char key = linha.toCharArray()[0];
if (key == 'P') {
break;
} else {
switch (key) {
case '1':
play();
break;
case '2':
stop();
break;
case '3':
resume();
break;
case '4':
pause();
break;
case '5':
previousTrack();
break;
case '6':
nextTrack();
break;
case '7':
increaseVolume();
break;
case '8':
decreaseVolume();
break;
case '9':
increaseVolumePercent(50);
break;
case 'A':
decreaseVolumePercent(50);
break;
case 'B':
setVolume(50);
break;
case 'C':
restart();
break;
case 'D':
setPlaylistPosition(10);
break;
case 'E':
clearPlayList();
break;
case 'F':
clearPlayListCache();
break;
case 'G':
System.out.println(getPlayListLength());
break;
case 'H':
System.out.println(writePlayListToFile());
break;
case 'I':
System.out.println(isShuffleStatusOn());
break;
case 'J':
System.out.println(isRepeatStatusOn());
break;
case 'L':
setRepeatStatusOn(true);
break;
case 'M':
setShuffleStatusOn(true);
break;
case 'N':
appendToPlayList("c:\\demo.mp3");
break;
case 'O':
System.out.println(getStatus());
break;
}
}
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
Detalhe nao testei este código porém falaram no forum que peguei que funcina .
E esse código [e para winamp , so pra ter uma ideia do que eu quero fazer