├── .classpath
├── .cvsignore
├── .gitignore
├── .project
├── LICENSE.txt
├── NSIS_Installer.nsi
├── README.md
├── bin
├── .cvsignore
├── COPYING
├── bin-linux
│ ├── ld
│ └── windres
├── bin-macosx-ppc
│ ├── ld
│ ├── readme.txt
│ └── windres
├── bin-macosx-x86
│ ├── ld
│ ├── readme.txt
│ └── windres
├── bin-solaris-sparc
│ ├── ld
│ └── windres
├── bin-win32
│ ├── ld.exe
│ └── windres.exe
├── ld
└── windres
├── build-private.xml
├── build.xml
├── demo
├── ConsoleApp
│ ├── .cvsignore
│ ├── ConsoleApp.exe
│ ├── build.bat
│ ├── build.xml
│ ├── l4j
│ │ └── ConsoleApp.ico
│ ├── lib
│ │ └── readme.txt
│ ├── readme.txt
│ └── src
│ │ └── net
│ │ └── sf
│ │ └── launch4j
│ │ └── example
│ │ └── ConsoleApp.java
├── LICENSE.txt
├── SimpleApp
│ ├── .cvsignore
│ ├── SimpleApp.exe
│ ├── build.bat
│ ├── build.xml
│ ├── l4j
│ │ ├── SimpleApp.ico
│ │ ├── SimpleApp.xml
│ │ └── splash.bmp
│ ├── lib
│ │ └── readme.txt
│ ├── readme.txt
│ └── src
│ │ └── net
│ │ └── sf
│ │ └── launch4j
│ │ └── example
│ │ └── SimpleApp.java
└── readme.txt
├── head
└── LICENSE.txt
├── head_src
├── LICENSE.txt
├── consolehead
│ ├── Makefile.win
│ ├── consolehead.c
│ └── consolehead.dev
├── guihead
│ ├── Makefile.win
│ ├── guihead.c
│ ├── guihead.dev
│ └── guihead.h
├── head.c
├── head.h
└── resource.h
├── l4j
├── launch4j-use.odg
├── launch4j.bmp
├── launch4j.xml
├── launch4jc.xml
├── nsis
│ ├── launch4j-setup-license.txt
│ └── launch4j.nsi
└── web
│ ├── bullet.gif
│ ├── changelog.html
│ ├── changelog_es.html
│ ├── docs.html
│ ├── docs_es.html
│ ├── footer.html
│ ├── footer_es.html
│ ├── header.html
│ ├── header_es.html
│ ├── index.html
│ ├── index_es.html
│ ├── launch4j-use.gif
│ ├── launch4j.gif
│ ├── links.html
│ ├── links_es.html
│ └── style.css
├── launch4j
├── launch4j.jfpr
├── lib
├── JGoodies.Forms.LICENSE.txt
├── JGoodies.Looks.LICENSE.txt
├── Nuvola.Icon.Theme.LICENSE.txt
├── XStream.LICENSE.txt
├── ant.LICENSE.txt
├── commons.LICENSE.txt
└── foxtrot.LICENSE.txt
├── manifest
├── uac.exe.manifest
└── xp-themes.exe.manifest
├── sign4j
├── README.txt
├── sign4j.c
└── sign4j.exe
├── src
├── images
│ ├── asterix-o.gif
│ ├── asterix.gif
│ ├── build.png
│ ├── button_ok.png
│ ├── cancel16.png
│ ├── down16.png
│ ├── edit_add16.png
│ ├── info.png
│ ├── new.png
│ ├── new16.png
│ ├── ok16.png
│ ├── open.png
│ ├── open16.png
│ ├── run.png
│ ├── save.png
│ └── up16.png
├── launch4j.properties
└── net
│ └── sf
│ └── launch4j
│ ├── Builder.java
│ ├── BuilderException.java
│ ├── ExecException.java
│ ├── FileChooserFilter.java
│ ├── Log.java
│ ├── Main.java
│ ├── Messages.java
│ ├── OptionParser.java
│ ├── RcBuilder.java
│ ├── Util.java
│ ├── ant
│ ├── AntClassPath.java
│ ├── AntConfig.java
│ ├── AntJre.java
│ ├── Launch4jTask.java
│ ├── Messages.java
│ ├── StringWrapper.java
│ ├── messages.properties
│ └── messages_es.properties
│ ├── binding
│ ├── Binding.java
│ ├── BindingException.java
│ ├── Bindings.java
│ ├── IValidatable.java
│ ├── InvariantViolationException.java
│ ├── JComboBoxBinding.java
│ ├── JListBinding.java
│ ├── JRadioButtonBinding.java
│ ├── JTextAreaBinding.java
│ ├── JTextComponentBinding.java
│ ├── JToggleButtonBinding.java
│ ├── Messages.java
│ ├── OptComponentBinding.java
│ ├── OptJTextAreaBinding.java
│ ├── Validator.java
│ ├── messages.properties
│ └── messages_es.properties
│ ├── config
│ ├── ClassPath.java
│ ├── Config.java
│ ├── ConfigPersister.java
│ ├── ConfigPersisterException.java
│ ├── Jre.java
│ ├── LdDefaults.java
│ ├── Messages.java
│ ├── Msg.java
│ ├── SingleInstance.java
│ ├── Splash.java
│ ├── VersionInfo.java
│ ├── messages.properties
│ └── messages_es.properties
│ ├── form
│ ├── BasicForm.java
│ ├── BasicForm.jfrm
│ ├── ClassPathForm.java
│ ├── ClassPathForm.jfrm
│ ├── ConfigForm.java
│ ├── ConfigForm.jfrm
│ ├── EnvironmentVarsForm.java
│ ├── EnvironmentVarsForm.jfrm
│ ├── HeaderForm.java
│ ├── HeaderForm.jfrm
│ ├── JreForm.java
│ ├── JreForm.jfrm
│ ├── Messages.java
│ ├── MessagesForm.java
│ ├── MessagesForm.jfrm
│ ├── SingleInstanceForm.java
│ ├── SingleInstanceForm.jfrm
│ ├── SplashForm.java
│ ├── SplashForm.jfrm
│ ├── VersionInfoForm.java
│ ├── VersionInfoForm.jfrm
│ ├── messages.properties
│ └── messages_es.properties
│ ├── formimpl
│ ├── AbstractAcceptListener.java
│ ├── BasicFormImpl.java
│ ├── BrowseActionListener.java
│ ├── ClassPathFormImpl.java
│ ├── ConfigFormImpl.java
│ ├── EnvironmentVarsFormImpl.java
│ ├── FileChooser.java
│ ├── GlassPane.java
│ ├── HeaderFormImpl.java
│ ├── JreFormImpl.java
│ ├── MainFrame.java
│ ├── Messages.java
│ ├── MessagesFormImpl.java
│ ├── SingleInstanceFormImpl.java
│ ├── SplashFormImpl.java
│ ├── VersionInfoFormImpl.java
│ ├── messages.properties
│ └── messages_es.properties
│ ├── messages.properties
│ └── messages_es.properties
├── w32api
├── MinGW.LICENSE.txt
├── libadvapi32.a
├── libgcc.a
├── libkernel32.a
├── libmingw32.a
├── libmsvcrt.a
├── libshell32.a
└── libuser32.a
└── web
├── .cvsignore
├── bullet.gif
├── changelog.html
├── docs.html
├── index.html
├── launch4j-use.gif
├── launch4j.gif
├── links.html
└── style.css
/.classpath:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/.cvsignore:
--------------------------------------------------------------------------------
1 | build
2 | build-test
3 | crashrep.*.zip
4 | log
5 | log.?
6 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | *.class
2 |
3 | # Package Files #
4 | *.jar
5 | *.war
6 | *.ear
7 | CVS
8 | *.o
--------------------------------------------------------------------------------
/.project:
--------------------------------------------------------------------------------
1 |
2 |
3 | launch4j
4 |
5 |
6 |
7 |
8 |
9 | org.eclipse.jdt.core.javabuilder
10 |
11 |
12 |
13 |
14 |
15 | org.eclipse.jdt.core.javanature
16 |
17 |
18 |
--------------------------------------------------------------------------------
/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Launch4j (http://launch4j.sourceforge.net/)
2 | Cross-platform Java application wrapper for creating Windows native executables.
3 |
4 | Copyright (c) 2004, 2011 Grzegorz Kowal
5 |
6 | All rights reserved.
7 |
8 | Redistribution and use in source and binary forms, with or without modification,
9 | are permitted provided that the following conditions are met:
10 |
11 | * Redistributions of source code must retain the above copyright notice,
12 | this list of conditions and the following disclaimer.
13 | * Redistributions in binary form must reproduce the above copyright notice,
14 | this list of conditions and the following disclaimer in the documentation
15 | and/or other materials provided with the distribution.
16 | * Neither the name of the Launch4j nor the names of its contributors
17 | may be used to endorse or promote products derived from this software without
18 | specific prior written permission.
19 |
20 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24 | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
27 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
28 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
29 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
30 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | launch4j
2 | ========
3 |
4 | I've forked the original project from http://launch4j.sourceforge.net/, to solve one problem: launch4j either required to pick up a *specific* JDK / JRE as hardcoded in the configuration, or it would allow to *search* for a Java Runtime on the target machine. However, if your project would use native libraries, then this automatic search would not allow you to configure that a 32bit runtime should be found first.
5 |
--------------------------------------------------------------------------------
/bin/.cvsignore:
--------------------------------------------------------------------------------
1 | ld*
2 | windres*
3 |
4 |
--------------------------------------------------------------------------------
/bin/bin-linux/ld:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fbergmann/launch4j/9ea2d07bd04257c1888f72cc2ae851749a3effc5/bin/bin-linux/ld
--------------------------------------------------------------------------------
/bin/bin-linux/windres:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fbergmann/launch4j/9ea2d07bd04257c1888f72cc2ae851749a3effc5/bin/bin-linux/windres
--------------------------------------------------------------------------------
/bin/bin-macosx-ppc/ld:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fbergmann/launch4j/9ea2d07bd04257c1888f72cc2ae851749a3effc5/bin/bin-macosx-ppc/ld
--------------------------------------------------------------------------------
/bin/bin-macosx-ppc/readme.txt:
--------------------------------------------------------------------------------
1 | The MinGW binutils were built on Mac OS X 10.4 by Peter Centgraf
2 |
--------------------------------------------------------------------------------
/bin/bin-macosx-ppc/windres:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fbergmann/launch4j/9ea2d07bd04257c1888f72cc2ae851749a3effc5/bin/bin-macosx-ppc/windres
--------------------------------------------------------------------------------
/bin/bin-macosx-x86/ld:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fbergmann/launch4j/9ea2d07bd04257c1888f72cc2ae851749a3effc5/bin/bin-macosx-x86/ld
--------------------------------------------------------------------------------
/bin/bin-macosx-x86/readme.txt:
--------------------------------------------------------------------------------
1 | The MinGW binutils were built on Mac OS X Lion by wrldwzrd89
2 |
--------------------------------------------------------------------------------
/bin/bin-macosx-x86/windres:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fbergmann/launch4j/9ea2d07bd04257c1888f72cc2ae851749a3effc5/bin/bin-macosx-x86/windres
--------------------------------------------------------------------------------
/bin/bin-solaris-sparc/ld:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fbergmann/launch4j/9ea2d07bd04257c1888f72cc2ae851749a3effc5/bin/bin-solaris-sparc/ld
--------------------------------------------------------------------------------
/bin/bin-solaris-sparc/windres:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fbergmann/launch4j/9ea2d07bd04257c1888f72cc2ae851749a3effc5/bin/bin-solaris-sparc/windres
--------------------------------------------------------------------------------
/bin/bin-win32/ld.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fbergmann/launch4j/9ea2d07bd04257c1888f72cc2ae851749a3effc5/bin/bin-win32/ld.exe
--------------------------------------------------------------------------------
/bin/bin-win32/windres.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fbergmann/launch4j/9ea2d07bd04257c1888f72cc2ae851749a3effc5/bin/bin-win32/windres.exe
--------------------------------------------------------------------------------
/bin/ld:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fbergmann/launch4j/9ea2d07bd04257c1888f72cc2ae851749a3effc5/bin/ld
--------------------------------------------------------------------------------
/bin/windres:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fbergmann/launch4j/9ea2d07bd04257c1888f72cc2ae851749a3effc5/bin/windres
--------------------------------------------------------------------------------
/build.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
--------------------------------------------------------------------------------
/demo/ConsoleApp/.cvsignore:
--------------------------------------------------------------------------------
1 | build
2 |
--------------------------------------------------------------------------------
/demo/ConsoleApp/ConsoleApp.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fbergmann/launch4j/9ea2d07bd04257c1888f72cc2ae851749a3effc5/demo/ConsoleApp/ConsoleApp.exe
--------------------------------------------------------------------------------
/demo/ConsoleApp/build.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 | if "%ANT_HOME%"=="" goto noAntHome
3 | if "%JAVA_HOME%"=="" goto noJavaHome
4 | call "%ANT_HOME%\bin\ant.bat" exe
5 | goto end
6 |
7 | :noAntHome
8 | echo ANT_HOME environment variable is not set
9 | goto end
10 |
11 | :noJavaHome
12 | echo JAVA_HOME environment variable is not set
13 |
14 | :end
15 |
--------------------------------------------------------------------------------
/demo/ConsoleApp/build.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
--------------------------------------------------------------------------------
/demo/ConsoleApp/l4j/ConsoleApp.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fbergmann/launch4j/9ea2d07bd04257c1888f72cc2ae851749a3effc5/demo/ConsoleApp/l4j/ConsoleApp.ico
--------------------------------------------------------------------------------
/demo/ConsoleApp/lib/readme.txt:
--------------------------------------------------------------------------------
1 | Put your jar libs here and the build script will include them
2 | in the classpath stored inside the jar manifest.
3 | In order to run your application move the output exe file from
4 | the dist directory to the same level as lib.
5 |
6 | SimpleApp.exe
7 | lib/
8 | lib/xml.jar
9 |
--------------------------------------------------------------------------------
/demo/ConsoleApp/readme.txt:
--------------------------------------------------------------------------------
1 | To build the example application set JAVA_HOME and ANT_HOME environment variables.
2 |
--------------------------------------------------------------------------------
/demo/ConsoleApp/src/net/sf/launch4j/example/ConsoleApp.java:
--------------------------------------------------------------------------------
1 | /*
2 | Launch4j (http://launch4j.sourceforge.net/)
3 | Cross-platform Java application wrapper for creating Windows native executables.
4 |
5 | Copyright (c) 2004, 2007 Grzegorz Kowal
6 |
7 | All rights reserved.
8 |
9 | Redistribution and use in source and binary forms, with or without modification,
10 | are permitted provided that the following conditions are met:
11 |
12 | * Redistributions of source code must retain the above copyright notice,
13 | this list of conditions and the following disclaimer.
14 | * Redistributions in binary form must reproduce the above copyright notice,
15 | this list of conditions and the following disclaimer in the documentation
16 | and/or other materials provided with the distribution.
17 | * Neither the name of the Launch4j nor the names of its contributors
18 | may be used to endorse or promote products derived from this software without
19 | specific prior written permission.
20 |
21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
25 | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
26 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
27 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
28 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
29 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
30 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
31 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32 | */
33 |
34 | package net.sf.launch4j.example;
35 |
36 | import java.io.BufferedReader;
37 | import java.io.IOException;
38 | import java.io.InputStreamReader;
39 |
40 | /**
41 | * @author Copyright (C) 2005 Grzegorz Kowal
42 | */
43 | public class ConsoleApp {
44 | public static void main(String[] args) {
45 | StringBuffer sb = new StringBuffer("Hello World!\n\nJava version: ");
46 | sb.append(System.getProperty("java.version"));
47 | sb.append("\nJava home: ");
48 | sb.append(System.getProperty("java.home"));
49 | sb.append("\nCurrent dir: ");
50 | sb.append(System.getProperty("user.dir"));
51 | if (args.length > 0) {
52 | sb.append("\nArgs: ");
53 | for (int i = 0; i < args.length; i++) {
54 | sb.append(args[i]);
55 | sb.append(' ');
56 | }
57 | }
58 | sb.append("\n\nEnter a line of text, Ctrl-C to stop.\n\n>");
59 | System.out.print(sb.toString());
60 | try {
61 | BufferedReader is = new BufferedReader(new InputStreamReader(System.in));
62 | String line;
63 | while ((line = is.readLine()) != null && !line.equalsIgnoreCase("quit")) {
64 | System.out.print("You wrote: " + line + "\n\n>");
65 | }
66 | is.close();
67 | System.exit(123);
68 | } catch (IOException e) {
69 | System.err.print(e);
70 | }
71 | }
72 | }
73 |
--------------------------------------------------------------------------------
/demo/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Launch4j (http://launch4j.sourceforge.net/)
2 | Cross-platform Java application wrapper for creating Windows native executables.
3 |
4 | Copyright (c) 2004, 2007 Grzegorz Kowal
5 |
6 | All rights reserved.
7 |
8 | Redistribution and use in source and binary forms, with or without modification,
9 | are permitted provided that the following conditions are met:
10 |
11 | * Redistributions of source code must retain the above copyright notice,
12 | this list of conditions and the following disclaimer.
13 | * Redistributions in binary form must reproduce the above copyright notice,
14 | this list of conditions and the following disclaimer in the documentation
15 | and/or other materials provided with the distribution.
16 | * Neither the name of the Launch4j nor the names of its contributors
17 | may be used to endorse or promote products derived from this software without
18 | specific prior written permission.
19 |
20 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24 | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
27 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
28 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
29 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
30 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--------------------------------------------------------------------------------
/demo/SimpleApp/.cvsignore:
--------------------------------------------------------------------------------
1 | build
2 |
--------------------------------------------------------------------------------
/demo/SimpleApp/SimpleApp.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fbergmann/launch4j/9ea2d07bd04257c1888f72cc2ae851749a3effc5/demo/SimpleApp/SimpleApp.exe
--------------------------------------------------------------------------------
/demo/SimpleApp/build.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 | if "%ANT_HOME%"=="" goto noAntHome
3 | if "%JAVA_HOME%"=="" goto noJavaHome
4 | call "%ANT_HOME%\bin\ant.bat" exe
5 | goto end
6 |
7 | :noAntHome
8 | echo ANT_HOME environment variable is not set
9 | goto end
10 |
11 | :noJavaHome
12 | echo JAVA_HOME environment variable is not set
13 |
14 | :end
15 |
--------------------------------------------------------------------------------
/demo/SimpleApp/build.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
--------------------------------------------------------------------------------
/demo/SimpleApp/l4j/SimpleApp.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fbergmann/launch4j/9ea2d07bd04257c1888f72cc2ae851749a3effc5/demo/SimpleApp/l4j/SimpleApp.ico
--------------------------------------------------------------------------------
/demo/SimpleApp/l4j/SimpleApp.xml:
--------------------------------------------------------------------------------
1 |
2 | gui
3 | ../SimpleApp.jar
4 | ../SimpleApp.exe
5 | SimpleApp
6 | .
7 | true
8 | SimpleApp.ico
9 |
10 | 1.4.0
11 |
12 |
13 | splash.bmp
14 | true
15 | 60
16 | true
17 |
18 |
--------------------------------------------------------------------------------
/demo/SimpleApp/l4j/splash.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fbergmann/launch4j/9ea2d07bd04257c1888f72cc2ae851749a3effc5/demo/SimpleApp/l4j/splash.bmp
--------------------------------------------------------------------------------
/demo/SimpleApp/lib/readme.txt:
--------------------------------------------------------------------------------
1 | Put your jar libs here and the build script will include them
2 | in the classpath stored inside the jar manifest.
3 | In order to run your application move the output exe file from
4 | the dist directory to the same level as lib.
5 |
6 | SimpleApp.exe
7 | lib/
8 | lib/xml.jar
9 |
--------------------------------------------------------------------------------
/demo/SimpleApp/readme.txt:
--------------------------------------------------------------------------------
1 | To build the example application set JAVA_HOME and ANT_HOME environment variables.
2 |
--------------------------------------------------------------------------------
/demo/SimpleApp/src/net/sf/launch4j/example/SimpleApp.java:
--------------------------------------------------------------------------------
1 | /*
2 | Launch4j (http://launch4j.sourceforge.net/)
3 | Cross-platform Java application wrapper for creating Windows native executables.
4 |
5 | Copyright (c) 2004, 2007 Grzegorz Kowal
6 |
7 | All rights reserved.
8 |
9 | Redistribution and use in source and binary forms, with or without modification,
10 | are permitted provided that the following conditions are met:
11 |
12 | * Redistributions of source code must retain the above copyright notice,
13 | this list of conditions and the following disclaimer.
14 | * Redistributions in binary form must reproduce the above copyright notice,
15 | this list of conditions and the following disclaimer in the documentation
16 | and/or other materials provided with the distribution.
17 | * Neither the name of the Launch4j nor the names of its contributors
18 | may be used to endorse or promote products derived from this software without
19 | specific prior written permission.
20 |
21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
25 | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
26 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
27 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
28 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
29 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
30 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
31 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32 | */
33 |
34 | package net.sf.launch4j.example;
35 |
36 | import java.awt.Dimension;
37 | import java.awt.Toolkit;
38 | import java.awt.event.WindowAdapter;
39 | import java.awt.event.WindowEvent;
40 |
41 | import javax.swing.JFrame;
42 | import javax.swing.JMenu;
43 | import javax.swing.JMenuBar;
44 | import javax.swing.JMenuItem;
45 | import javax.swing.JOptionPane;
46 | import javax.swing.UIManager;
47 |
48 | public class SimpleApp extends JFrame {
49 | public SimpleApp(String[] args) {
50 | super("Java Application");
51 | final int inset = 100;
52 | Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
53 | setBounds (inset, inset,
54 | screenSize.width - inset * 2, screenSize.height - inset * 2);
55 |
56 | JMenu menu = new JMenu("File");
57 | menu.add(new JMenuItem("Open"));
58 | menu.add(new JMenuItem("Save"));
59 | JMenuBar mb = new JMenuBar();
60 | mb.setOpaque(true);
61 | mb.add(menu);
62 | setJMenuBar(mb);
63 |
64 | this.addWindowListener(new WindowAdapter() {
65 | public void windowClosing(WindowEvent e) {
66 | System.exit(123);
67 | }});
68 | setVisible(true);
69 |
70 | StringBuffer sb = new StringBuffer("Java version: ");
71 | sb.append(System.getProperty("java.version"));
72 | sb.append("\nJava home: ");
73 | sb.append(System.getProperty("java.home"));
74 | sb.append("\nCurrent dir: ");
75 | sb.append(System.getProperty("user.dir"));
76 | if (args.length > 0) {
77 | sb.append("\nArgs: ");
78 | for (int i = 0; i < args.length; i++) {
79 | sb.append(args[i]);
80 | sb.append(' ');
81 | }
82 | }
83 | JOptionPane.showMessageDialog(this,
84 | sb.toString(),
85 | "Info",
86 | JOptionPane.INFORMATION_MESSAGE);
87 | }
88 |
89 | public static void setLAF() {
90 | JFrame.setDefaultLookAndFeelDecorated(true);
91 | Toolkit.getDefaultToolkit().setDynamicLayout(true);
92 | System.setProperty("sun.awt.noerasebackground","true");
93 | try {
94 | UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
95 | } catch (Exception e) {
96 | System.err.println("Failed to set LookAndFeel");
97 | }
98 | }
99 |
100 | public static void main(String[] args) {
101 | setLAF();
102 | new SimpleApp(args);
103 | }
104 | }
105 |
--------------------------------------------------------------------------------
/demo/readme.txt:
--------------------------------------------------------------------------------
1 | JRE/SDK 1.4.0 or higher must be installed on your system to run this demo.
2 |
3 | try running it with some command line arguments...
4 |
--------------------------------------------------------------------------------
/head/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Copyright (c) 2004, 2007 Grzegorz Kowal
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy
4 | of this software and associated documentation files (the "Software"), to deal
5 | in the Software without restriction, including without limitation the rights
6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7 | copies of the Software, and to permit persons to whom the Software is
8 | furnished to do so, subject to the following conditions:
9 |
10 | The above copyright notice and this permission notice shall be included in
11 | all copies or substantial portions of the Software.
12 |
13 | Except as contained in this notice, the name(s) of the above copyright holders
14 | shall not be used in advertising or otherwise to promote the sale, use or other
15 | dealings in this Software without prior written authorization.
16 |
17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
23 | THE SOFTWARE.
--------------------------------------------------------------------------------
/head_src/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Copyright (c) 2004, 2011 Grzegorz Kowal
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy
4 | of this software and associated documentation files (the "Software"), to deal
5 | in the Software without restriction, including without limitation the rights
6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7 | copies of the Software, and to permit persons to whom the Software is
8 | furnished to do so, subject to the following conditions:
9 |
10 | The above copyright notice and this permission notice shall be included in
11 | all copies or substantial portions of the Software.
12 |
13 | Except as contained in this notice, the name(s) of the above copyright holders
14 | shall not be used in advertising or otherwise to promote the sale, use or other
15 | dealings in this Software without prior written authorization.
16 |
17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
23 | THE SOFTWARE.
24 |
--------------------------------------------------------------------------------
/head_src/consolehead/Makefile.win:
--------------------------------------------------------------------------------
1 | # Project: consolehead
2 | # Makefile created by Dev-C++ 4.9.9.2
3 |
4 | CPP = g++.exe
5 | CC = gcc.exe
6 | WINDRES = windres.exe
7 | RES =
8 | OBJ = ../../head/consolehead.o ../../head/head.o $(RES)
9 | LINKOBJ = ../../head/consolehead.o ../../head/head.o $(RES)
10 | LIBS = -L"C:/Dev-Cpp/lib" -n -s
11 | INCS = -I"C:/Dev-Cpp/include"
12 | CXXINCS = -I"C:/Dev-Cpp/lib/gcc/mingw32/3.4.2/include" -I"C:/Dev-Cpp/include/c++/3.4.2/backward" -I"C:/Dev-Cpp/include/c++/3.4.2/mingw32" -I"C:/Dev-Cpp/include/c++/3.4.2" -I"C:/Dev-Cpp/include"
13 | BIN = consolehead.exe
14 | CXXFLAGS = $(CXXINCS) -fexpensive-optimizations -O3
15 | CFLAGS = $(INCS) -fexpensive-optimizations -O3
16 | RM = rm -f
17 |
18 | .PHONY: all all-before all-after clean clean-custom
19 |
20 | all: all-before consolehead.exe all-after
21 |
22 |
23 | clean: clean-custom
24 | ${RM} $(OBJ) $(BIN)
25 |
26 | $(BIN): $(OBJ)
27 | # $(CC) $(LINKOBJ) -o "consolehead.exe" $(LIBS)
28 |
29 | ../../head/consolehead.o: consolehead.c
30 | $(CC) -c consolehead.c -o ../../head/consolehead.o $(CFLAGS)
31 |
32 | ../../head/head.o: ../head.c
33 | $(CC) -c ../head.c -o ../../head/head.o $(CFLAGS)
34 |
--------------------------------------------------------------------------------
/head_src/consolehead/consolehead.c:
--------------------------------------------------------------------------------
1 | /*
2 | Launch4j (http://launch4j.sourceforge.net/)
3 | Cross-platform Java application wrapper for creating Windows native executables.
4 |
5 | Copyright (c) 2004, 2007 Grzegorz Kowal
6 |
7 | Permission is hereby granted, free of charge, to any person obtaining a copy
8 | of this software and associated documentation files (the "Software"), to deal
9 | in the Software without restriction, including without limitation the rights
10 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11 | copies of the Software, and to permit persons to whom the Software is
12 | furnished to do so, subject to the following conditions:
13 |
14 | The above copyright notice and this permission notice shall be included in
15 | all copies or substantial portions of the Software.
16 |
17 | Except as contained in this notice, the name(s) of the above copyright holders
18 | shall not be used in advertising or otherwise to promote the sale, use or other
19 | dealings in this Software without prior written authorization.
20 |
21 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
22 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
24 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
25 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
26 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
27 | THE SOFTWARE.
28 | */
29 |
30 | #include "../resource.h"
31 | #include "../head.h"
32 |
33 | int main(int argc, char* argv[])
34 | {
35 | setConsoleFlag();
36 | LPTSTR cmdLine = GetCommandLine();
37 | if (*cmdLine == '"') {
38 | if (*(cmdLine = strchr(cmdLine + 1, '"') + 1)) {
39 | cmdLine++;
40 | }
41 | } else if ((cmdLine = strchr(cmdLine, ' ')) != NULL) {
42 | cmdLine++;
43 | } else {
44 | cmdLine = "";
45 | }
46 | int result = prepare(cmdLine);
47 | if (result == ERROR_ALREADY_EXISTS) {
48 | char errMsg[BIG_STR] = {0};
49 | loadString(INSTANCE_ALREADY_EXISTS_MSG, errMsg);
50 | msgBox(errMsg);
51 | closeLogFile();
52 | return 2;
53 | }
54 | if (result != TRUE) {
55 | signalError();
56 | return 1;
57 | }
58 |
59 | result = (int) execute(TRUE);
60 | if (result == -1) {
61 | signalError();
62 | } else {
63 | return result;
64 | }
65 | }
66 |
--------------------------------------------------------------------------------
/head_src/consolehead/consolehead.dev:
--------------------------------------------------------------------------------
1 | [Project]
2 | FileName=consolehead.dev
3 | Name=consolehead
4 | UnitCount=4
5 | Type=1
6 | Ver=1
7 | ObjFiles=
8 | Includes=
9 | Libs=
10 | PrivateResource=
11 | ResourceIncludes=
12 | MakeIncludes=
13 | Compiler=
14 | CppCompiler=
15 | Linker=-n_@@_
16 | IsCpp=0
17 | Icon=
18 | ExeOutput=
19 | ObjectOutput=..\..\head
20 | OverrideOutput=0
21 | OverrideOutputName=consolehead.exe
22 | HostApplication=
23 | Folders=
24 | CommandLine=
25 | UseCustomMakefile=0
26 | CustomMakefile=Makefile.win
27 | IncludeVersionInfo=0
28 | SupportXPThemes=0
29 | CompilerSet=0
30 | CompilerSettings=0000000001001000000100
31 |
32 | [Unit1]
33 | FileName=consolehead.c
34 | CompileCpp=0
35 | Folder=consolehead
36 | Compile=1
37 | Link=1
38 | Priority=1000
39 | OverrideBuildCmd=0
40 | BuildCmd=
41 |
42 | [VersionInfo]
43 | Major=0
44 | Minor=1
45 | Release=1
46 | Build=1
47 | LanguageID=1033
48 | CharsetID=1252
49 | CompanyName=
50 | FileVersion=
51 | FileDescription=Developed using the Dev-C++ IDE
52 | InternalName=
53 | LegalCopyright=
54 | LegalTrademarks=
55 | OriginalFilename=
56 | ProductName=
57 | ProductVersion=
58 | AutoIncBuildNr=0
59 |
60 | [Unit2]
61 | FileName=..\resource.h
62 | CompileCpp=0
63 | Folder=consolehead
64 | Compile=1
65 | Link=1
66 | Priority=1000
67 | OverrideBuildCmd=0
68 | BuildCmd=
69 |
70 | [Unit3]
71 | FileName=..\head.c
72 | CompileCpp=0
73 | Folder=consolehead
74 | Compile=1
75 | Link=1
76 | Priority=1000
77 | OverrideBuildCmd=0
78 | BuildCmd=
79 |
80 | [Unit4]
81 | FileName=..\head.h
82 | CompileCpp=0
83 | Folder=consolehead
84 | Compile=1
85 | Link=1
86 | Priority=1000
87 | OverrideBuildCmd=0
88 | BuildCmd=
89 |
90 | [Unit5]
91 | FileName=..\head.rc
92 | Folder=consolehead
93 | Compile=1
94 | Link=0
95 | Priority=1000
96 | OverrideBuildCmd=0
97 | BuildCmd=
98 |
99 | [Unit6]
100 | FileName=..\resid.h
101 | CompileCpp=0
102 | Folder=consolehead
103 | Compile=1
104 | Link=1
105 | Priority=1000
106 | OverrideBuildCmd=0
107 | BuildCmd=
108 |
109 |
--------------------------------------------------------------------------------
/head_src/guihead/Makefile.win:
--------------------------------------------------------------------------------
1 | # Project: guihead
2 | # Makefile created by Dev-C++ 4.9.9.2
3 |
4 | CPP = g++.exe
5 | CC = gcc.exe
6 | WINDRES = windres.exe
7 | RES =
8 | OBJ = ../../head/guihead.o ../../head/head.o $(RES)
9 | LINKOBJ = ../../head/guihead.o ../../head/head.o $(RES)
10 | LIBS = -L"C:/Dev-Cpp/lib" -mwindows -n -s
11 | INCS = -I"C:/Dev-Cpp/include"
12 | CXXINCS = -I"C:/Dev-Cpp/lib/gcc/mingw32/3.4.2/include" -I"C:/Dev-Cpp/include/c++/3.4.2/backward" -I"C:/Dev-Cpp/include/c++/3.4.2/mingw32" -I"C:/Dev-Cpp/include/c++/3.4.2" -I"C:/Dev-Cpp/include"
13 | BIN = guihead.exe
14 | CXXFLAGS = $(CXXINCS) -fexpensive-optimizations -O3
15 | CFLAGS = $(INCS) -fexpensive-optimizations -O3
16 | RM = rm -f
17 |
18 | .PHONY: all all-before all-after clean clean-custom
19 |
20 | all: all-before guihead.exe all-after
21 |
22 |
23 | clean: clean-custom
24 | ${RM} $(OBJ) $(BIN)
25 |
26 | $(BIN): $(OBJ)
27 | # $(CC) $(LINKOBJ) -o "guihead.exe" $(LIBS)
28 |
29 | ../../head/guihead.o: guihead.c
30 | $(CC) -c guihead.c -o ../../head/guihead.o $(CFLAGS)
31 |
32 | ../../head/head.o: ../head.c
33 | $(CC) -c ../head.c -o ../../head/head.o $(CFLAGS)
34 |
--------------------------------------------------------------------------------
/head_src/guihead/guihead.dev:
--------------------------------------------------------------------------------
1 | [Project]
2 | FileName=guihead.dev
3 | Name=guihead
4 | UnitCount=5
5 | Type=0
6 | Ver=1
7 | ObjFiles=
8 | Includes=
9 | Libs=
10 | PrivateResource=
11 | ResourceIncludes=
12 | MakeIncludes=
13 | Compiler=
14 | CppCompiler=
15 | Linker=-n_@@_
16 | IsCpp=0
17 | Icon=
18 | ExeOutput=
19 | ObjectOutput=..\..\head
20 | OverrideOutput=0
21 | OverrideOutputName=guihead.exe
22 | HostApplication=
23 | Folders=
24 | CommandLine=
25 | UseCustomMakefile=1
26 | CustomMakefile=Makefile.win
27 | IncludeVersionInfo=0
28 | SupportXPThemes=0
29 | CompilerSet=0
30 | CompilerSettings=0000000001001000000100
31 |
32 | [Unit1]
33 | FileName=guihead.c
34 | CompileCpp=0
35 | Folder=guihead
36 | Compile=1
37 | Link=1
38 | Priority=1000
39 | OverrideBuildCmd=0
40 | BuildCmd=$(CC) -c guihead.c -o ../../head/guihead.o $(CFLAGS)
41 |
42 | [Unit2]
43 | FileName=guihead.h
44 | CompileCpp=0
45 | Folder=guihead
46 | Compile=1
47 | Link=1
48 | Priority=1000
49 | OverrideBuildCmd=0
50 | BuildCmd=
51 |
52 | [VersionInfo]
53 | Major=0
54 | Minor=1
55 | Release=1
56 | Build=1
57 | LanguageID=1033
58 | CharsetID=1252
59 | CompanyName=
60 | FileVersion=
61 | FileDescription=Developed using the Dev-C++ IDE
62 | InternalName=
63 | LegalCopyright=
64 | LegalTrademarks=
65 | OriginalFilename=
66 | ProductName=
67 | ProductVersion=
68 | AutoIncBuildNr=0
69 |
70 | [Unit4]
71 | FileName=..\head.h
72 | CompileCpp=0
73 | Folder=guihead
74 | Compile=1
75 | Link=1
76 | Priority=1000
77 | OverrideBuildCmd=0
78 | BuildCmd=
79 |
80 | [Unit6]
81 | FileName=..\resid.h
82 | CompileCpp=0
83 | Folder=guihead
84 | Compile=1
85 | Link=1
86 | Priority=1000
87 | OverrideBuildCmd=0
88 | BuildCmd=
89 |
90 | [Unit3]
91 | FileName=..\head.c
92 | CompileCpp=0
93 | Folder=guihead
94 | Compile=1
95 | Link=1
96 | Priority=1000
97 | OverrideBuildCmd=0
98 | BuildCmd=
99 |
100 | [Unit5]
101 | FileName=..\resource.h
102 | CompileCpp=0
103 | Folder=guihead
104 | Compile=1
105 | Link=1
106 | Priority=1000
107 | OverrideBuildCmd=0
108 | BuildCmd=
109 |
110 |
--------------------------------------------------------------------------------
/head_src/guihead/guihead.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launch4j (http://launch4j.sourceforge.net/)
3 | Cross-platform Java application wrapper for creating Windows native executables.
4 |
5 | Copyright (c) 2004, 2007 Grzegorz Kowal
6 |
7 | Permission is hereby granted, free of charge, to any person obtaining a copy
8 | of this software and associated documentation files (the "Software"), to deal
9 | in the Software without restriction, including without limitation the rights
10 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11 | copies of the Software, and to permit persons to whom the Software is
12 | furnished to do so, subject to the following conditions:
13 |
14 | The above copyright notice and this permission notice shall be included in
15 | all copies or substantial portions of the Software.
16 |
17 | Except as contained in this notice, the name(s) of the above copyright holders
18 | shall not be used in advertising or otherwise to promote the sale, use or other
19 | dealings in this Software without prior written authorization.
20 |
21 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
22 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
24 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
25 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
26 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
27 | THE SOFTWARE.
28 | */
29 |
30 | #define ID_TIMER 1
31 | #define DEFAULT_SPLASH_TIMEOUT 60 /* 60 seconds */
32 | #define MAX_SPLASH_TIMEOUT 60 * 15 /* 15 minutes */
33 |
34 | HWND getInstanceWindow();
35 |
36 | BOOL CALLBACK enumwndfn(HWND hwnd, LPARAM lParam);
37 |
38 | VOID CALLBACK TimerProc(
39 | HWND hwnd, // handle of window for timer messages
40 | UINT uMsg, // WM_TIMER message
41 | UINT idEvent, // timer identifier
42 | DWORD dwTime // current system time
43 | );
44 |
--------------------------------------------------------------------------------
/head_src/resource.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launch4j (http://launch4j.sourceforge.net/)
3 | Cross-platform Java application wrapper for creating Windows native executables.
4 |
5 | Copyright (c) 2004, 2008 Grzegorz Kowal
6 | Ian Roberts (jdk preference patch)
7 |
8 | Permission is hereby granted, free of charge, to any person obtaining a copy
9 | of this software and associated documentation files (the "Software"), to deal
10 | in the Software without restriction, including without limitation the rights
11 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
12 | copies of the Software, and to permit persons to whom the Software is
13 | furnished to do so, subject to the following conditions:
14 |
15 | The above copyright notice and this permission notice shall be included in
16 | all copies or substantial portions of the Software.
17 |
18 | Except as contained in this notice, the name(s) of the above copyright holders
19 | shall not be used in advertising or otherwise to promote the sale, use or other
20 | dealings in this Software without prior written authorization.
21 |
22 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
23 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
24 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
25 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
26 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
27 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
28 | THE SOFTWARE.
29 | */
30 |
31 | // ICON
32 | #define APP_ICON 1
33 |
34 | // BITMAP
35 | #define SPLASH_BITMAP 1
36 |
37 | // RCDATA
38 | #define JRE_PATH 1
39 | #define JAVA_MIN_VER 2
40 | #define JAVA_MAX_VER 3
41 | #define SHOW_SPLASH 4
42 | #define SPLASH_WAITS_FOR_WINDOW 5
43 | #define SPLASH_TIMEOUT 6
44 | #define SPLASH_TIMEOUT_ERR 7
45 | #define CHDIR 8
46 | #define SET_PROC_NAME 9
47 | #define ERR_TITLE 10
48 | #define GUI_HEADER_STAYS_ALIVE 11
49 | #define JVM_OPTIONS 12
50 | #define CMD_LINE 13
51 | #define JAR 14
52 | #define MAIN_CLASS 15
53 | #define CLASSPATH 16
54 | #define WRAPPER 17
55 | #define JDK_PREFERENCE 18
56 | #define ENV_VARIABLES 19
57 | #define PRIORITY_CLASS 20
58 | #define DOWNLOAD_URL 21
59 | #define SUPPORT_URL 22
60 | #define MUTEX_NAME 23
61 | #define INSTANCE_WINDOW_TITLE 24
62 | #define INITIAL_HEAP_SIZE 25
63 | #define INITIAL_HEAP_PERCENT 26
64 | #define MAX_HEAP_SIZE 27
65 | #define MAX_HEAP_PERCENT 28
66 | #define STRING_FORCE_32 29
67 |
68 | #define STARTUP_ERR 101
69 | #define BUNDLED_JRE_ERR 102
70 | #define JRE_VERSION_ERR 103
71 | #define LAUNCHER_ERR 104
72 | #define INSTANCE_ALREADY_EXISTS_MSG 105
73 |
--------------------------------------------------------------------------------
/l4j/launch4j-use.odg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fbergmann/launch4j/9ea2d07bd04257c1888f72cc2ae851749a3effc5/l4j/launch4j-use.odg
--------------------------------------------------------------------------------
/l4j/launch4j.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fbergmann/launch4j/9ea2d07bd04257c1888f72cc2ae851749a3effc5/l4j/launch4j.bmp
--------------------------------------------------------------------------------
/l4j/launch4j.xml:
--------------------------------------------------------------------------------
1 |
2 | gui
3 | true
4 | launch4j.jar
5 | ../launch4j.exe
6 | launch4j
7 | .
8 | true
9 | false
10 |
11 | 1.4.0
12 |
13 |
14 | launch4j.bmp
15 | true
16 | 60
17 | true
18 |
19 |
20 | Cross-platform Java application wrapper
21 | Copyright (C) 2004, 2006 Grzegorz Kowal
22 | launch4j
23 | http://launch4j.sourceforge.net/
24 | GUI launcher
25 | launch4j.exe
26 |
27 |
--------------------------------------------------------------------------------
/l4j/launch4jc.xml:
--------------------------------------------------------------------------------
1 |
2 | console
3 | true
4 | launch4j.jar
5 | ../launch4jc.exe
6 | launch4j
7 | true
8 | false
9 |
10 | 1.4.0
11 |
12 |
13 | Cross-platform Java application wrapper
14 | Copyright (C) 2004, 2006 Grzegorz Kowal
15 | launch4j
16 | http://launch4j.sourceforge.net/
17 | Console launcher
18 | launch4jc.exe
19 |
20 |
--------------------------------------------------------------------------------
/l4j/nsis/launch4j-setup-license.txt:
--------------------------------------------------------------------------------
1 | Launch4j :: Cross-platform Java application wrapper
2 | for creating Windows native executables
3 |
4 | Copyright (c) 2004, 2011 Grzegorz Kowal
5 | All rights reserved.
6 |
7 | Redistribution and use in source and binary forms, with or without modification,
8 | are permitted provided that the following conditions are met:
9 |
10 | * Redistributions of source code must retain the above copyright notice,
11 | this list of conditions and the following disclaimer.
12 | * Redistributions in binary form must reproduce the above copyright notice,
13 | this list of conditions and the following disclaimer in the documentation
14 | and/or other materials provided with the distribution.
15 | * Neither the name of the Launch4j nor the names of its contributors
16 | may be used to endorse or promote products derived from this software without
17 | specific prior written permission.
18 |
19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
20 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
21 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
22 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
23 | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
24 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
25 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
26 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
27 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
28 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
29 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30 |
31 |
32 | This product includes software developed by the Apache Software Foundation (http://www.apache.org/).
33 |
--------------------------------------------------------------------------------
/l4j/web/bullet.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fbergmann/launch4j/9ea2d07bd04257c1888f72cc2ae851749a3effc5/l4j/web/bullet.gif
--------------------------------------------------------------------------------
/l4j/web/footer.html:
--------------------------------------------------------------------------------
1 |
2 |
11 |
12 |