2011-07-07 5 views
0

こんにちは私はこのコードを実行している間、次のJavaコードとサンプルのNSISスクリプトを使用しています。エラーJavaCodeを使用してスクリプトを実行中

マイJavaCode:

import java.io.IOException; 


public class SampleClass { 

    /** 
    * @param args 
    */ 
    Process p; 
    public static void main(String[] args) { 
     // TODO Auto-generated method stub 
     Runtime r=Runtime.getRuntime(); 
     try { 
      r.exec("makensis.exe myscript.nsi"); 
     } catch (IOException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 
    } 

} 

と私は

java.io.IOException: Cannot run program "makensis.exe": CreateProcess error=2, The system cannot find the file specified 
    at java.lang.ProcessBuilder.start(Unknown Source) 
    at java.lang.Runtime.exec(Unknown Source) 
    at java.lang.Runtime.exec(Unknown Source) 
    at java.lang.Runtime.exec(Unknown Source) 
    at SampleClass.main(SampleClass.java:14) 
Caused by: java.io.IOException: CreateProcess error=2, The system cannot find the file specified 
    at java.lang.ProcessImpl.create(Native Method) 
    at java.lang.ProcessImpl.<init>(Unknown Source) 
    at java.lang.ProcessImpl.start(Unknown Source) 
    ... 5 more 

、私は次のエラーを得た実行していながら、それを解決する方法をたまたまなぜNSISスクリプトが

OutFile "Your ComputerName.exe" 
Name "Your ComputerName" 
Caption "ComputerName" 
XPStyle "on" 

Function .onInit 
    ReadRegStr $0 HKLM "System\CurrentControlSet\Control\ComputerName\ActiveComputerName" "ComputerName" 
    StrCmp $0 "" win9x 
    StrCpy $1 $0 4 3 
    MessageBox MB_OK "Your ComputerName : $0" 
    Goto done 
win9x: 
    ReadRegStr $0 HKLM "System\CurrentControlSet\Control\ComputerName\ComputerName" "ComputerName" 
    StrCpy $1 $0 4 3 
    MessageBox MB_OK "Your ComputerName : $0" 
done: 
    Quit ; placed here so we quit the installer; we dont need the other pages for this example. 
FunctionEnd 

Section "-boo" 
; 
SectionEnd 

; rest of script 

ですこのエラー?????

答えて

0

makensis.exeファイルと同じディレクトリからjavaコードを実行していますか?そうでない場合は、絶対パスを使用する必要があります。

+0

hi scobal、それは正しいですか?r.exec( "C:/Users/FSSD/workspace/Snake/makensis.exe sample.nsi");私もこれを試したが動作していない – Aerrow

+0

絶対パスを使用すると同じ例外が発生しますか? –

+0

ya、正しいです..here sample.nsiが私のスクリプトファイルです – Aerrow

関連する問題