开发者

Error While Execute the script using JavaCode

Hi i use the following java code and a sample NSIS script while i run this code i got an error.

My 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();
        }
    }

}

and my NSIS script is

    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

while i'm executing i got the following error,

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 can开发者_运维技巧not 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

Why it happens how to resolve this error?????


Are you running the java code from the same directory as the makensis.exe file? If not then you will need to use an absolute path

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜