2013-06-25 2 views
0

Java 코드를 사용하여 Windows 7의 배경 화면을 변경할 수 있습니까? 이클립스 IDE에서이 코드는 실패Windows 7에서 배경 화면을 변경하기위한 자바 코드

public class Changer { 
    /** 
    * @param args 
    */ 
    public static native int SystemParametersInfo(int uiAction,int uiParam,String pvParam,int fWinIni); 

    static 
    { 
     System.loadLibrary("user32"); 
    } 

    public int Change(String path) 
    { 
     return SystemParametersInfo(20, 0, path, 0); 
    } 

    public static void main(String args[]) 
    { 
     String wallpaper_file = "D:\\Photos\\walli\\dream girls\\jes54d.jpeg"; 
     Changer mychanger = new Changer(); 
     mychanger.Change(wallpaper_file); 
    } 
} 

:

여기 내 코드입니다. 이 오류가 발생합니다 :

Exception in thread "main" java.lang.UnsatisfiedLinkError: com.changer.Changer.SystemParametersInfo(IILjava/lang/String;I)I 
    at com.changer.Changer.SystemParametersInfo(Native Method) 
    at com.changer.Changer.Change(Changer.java:18) 
    at com.changer.Changer.main(Changer.java:25) 

저는 Java를 처음 사용하여 가능한 해결책이 무엇인지 알 수 없습니다.

미리 감사드립니다.

답변

1

함수 호출 SystemParametersInfo(20, 0, path, 0)이 잘못되었습니다. SystemParametersInfo(UINT_PTR uiAction, UINT_PTR uiParam, String pvParam, UINT_PTR fWinIni)이 필요합니다.

accepted 대답을 참조하십시오.

here에서 JNA를 얻을 수 있습니다. 그리고 javadocs here을 참조하십시오.