1 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
---|
2 | <html>
|
---|
3 | <head>
|
---|
4 | <title>Ant Installer</title>
|
---|
5 | <link href="style.css" type="text/css" rel="stylesheet">
|
---|
6 | <link href="css/nav.css" rel="stylesheet" type="text/css">
|
---|
7 | <link rel="SHORTCUT ICON" type="image/png" href="images/antinstaller-icon.png">
|
---|
8 | <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
---|
9 | <meta name="keywords"
|
---|
10 | content="Ant, installer, AntInstall, gui, console, input, parameters, properties, swing, user interface, validation, configuration">
|
---|
11 | <script type="text/javascript" src="js/menu.js"></script>
|
---|
12 | <script type="text/javascript" src="js/sstree.js"></script>
|
---|
13 | <script type="text/javascript" src="js/winfix.js"></script>
|
---|
14 | </head>
|
---|
15 | <body onload="collapseAll('contents-panel', ['ol']); "><div id="tpallcontent">
|
---|
16 | <table cellspacing="0" width="100%">
|
---|
17 | <tbody>
|
---|
18 | <tr class="tpheader">
|
---|
19 | <th class="tpleft">
|
---|
20 | <a target="_top" href="index.html" title="home"><img src="images/ant-install-small.png" alt="AntInstaller" id="logo" width="76" height="50"/></a>
|
---|
21 | <script type="text/javascript">winFix();</script>
|
---|
22 | </th>
|
---|
23 | <th class="tptop" valign="bottom">
|
---|
24 | <img src="space.gif" height="1" width="440" alt="spacer"/><br/>
|
---|
25 |
|
---|
26 | <table>
|
---|
27 | <tr>
|
---|
28 | <td valign="top">
|
---|
29 | <div class="tpheadertitle">AntInstaller</div>
|
---|
30 | <!--img src="images/ant-install-title.png" alt="AntInstaller"/-->
|
---|
31 | </td>
|
---|
32 | <td width="100%" align="right" valign="bottom" nowrap="NOWRAP">
|
---|
33 | <div class="tpraised">
|
---|
34 | <a class="tpbutton" target="_top" href="index.html">home</a>
|
---|
35 | <a class="tpbutton" target="_top" href="http://sourceforge.net/project/showfiles.php?group_id=123466&package_id=134917">download</a>
|
---|
36 | <a class="tpbutton" target="_top" href="http://sf.net">sourceforge</a>
|
---|
37 | <a class="tpbutton" target="_top" href="manual-ant.html">antmanual</a>
|
---|
38 | <a class="tpbutton" target="_top" href="http://sourceforge.net/tracker/?group_id=123466&atid=696615">RFEs</a>
|
---|
39 | <a class="tpbutton" target="_top" href="http://sourceforge.net/tracker/?group_id=123466&atid=696612">Bugs</a></div>
|
---|
40 | </td>
|
---|
41 | </tr>
|
---|
42 | </table>
|
---|
43 | </th>
|
---|
44 | </tr>
|
---|
45 | <tr class="tpbody">
|
---|
46 | <td class="tpleft" valign="bottom">
|
---|
47 | <br/>
|
---|
48 | <div id="logoset">
|
---|
49 | <a target="_top" href="http://sourceforge.net"><img src="http://sourceforge.net/sflogo.php?group_id=123466&type=2" alt="SourceForge.net Logo" border="0" height="37" width="125"></a>
|
---|
50 | <br/><br/>
|
---|
51 | <a target="_top" href="http://sourceforge.net/donate/index.php?group_id=123466">
|
---|
52 | <img src="http://sourceforge.net/images/project-support.jpg" alt="donate to AntInstaller"/>
|
---|
53 | </a>
|
---|
54 | </div>
|
---|
55 | </td>
|
---|
56 | <td class="tpright" valign="top">
|
---|
57 | <div class="tpcontent">
|
---|
58 | <!--[segment-content] page content start -->
|
---|
59 | <h2>Ant tricks</h2>
|
---|
60 | The back end of AntInstaller is Ant so you can do anything with AntInstaller that Ant can do.
|
---|
61 | However there are a few things that an installer should do that you may not be aware of and this
|
---|
62 | page is a start at highlighting them.
|
---|
63 | <br>
|
---|
64 | Please get in contact if you have other tips and tricks that might help other users.
|
---|
65 | <h3>Windows Shortcuts</h3>
|
---|
66 | To get Ant to create Windows shortcuts you have to set up a few hooks into standard windows libraries.
|
---|
67 | Essentilly you need to use RunDLL and pass a windows setup .INF file.
|
---|
68 | You can not deliver the .INF file correct for every system so you should use the replace task on the delivered file
|
---|
69 | to set the final location of the .ICO files that will be used and the final location of the executables or
|
---|
70 | files to create shortcuts to.<br><br>
|
---|
71 |
|
---|
72 | <b>installIcons.inf</b> N.B. the ridiculous multiple quotes are obligatory. After deploying this file
|
---|
73 | the <code>@installDir@</code> must be replaced with the actual installation directory using Ant replace.
|
---|
74 | <pre style="font-size:9px">
|
---|
75 | [version]
|
---|
76 | signature="$chicago$"
|
---|
77 |
|
---|
78 | [DefaultInstall]
|
---|
79 | UpdateInis=Addlink
|
---|
80 |
|
---|
81 | [AddLink]
|
---|
82 | setup.ini, progman.groups,, "group0=DBusViewer (enhanced)"
|
---|
83 | setup.ini, group0,, ""DBusViewer (enhanced)""
|
---|
84 | setup.ini, group0,, """DBusViewer (enhanced)"",""cmd /c """"@installDir@\bin\MessageViewer.cmd"""""",""@installDir@\bin\favicon.ico"",0,"
|
---|
85 |
|
---|
86 | setup.ini, progman.groups,, "group0=DBusViewer (enhanced)"
|
---|
87 | setup.ini, group0,, ""DBusViewer (enhanced)""
|
---|
88 | setup.ini, group0,, """Edit Start Script"",""notepad.exe "@installDir@\bin\MessageViewer.cmd""",,0,"
|
---|
89 | </pre>
|
---|
90 |
|
---|
91 | To execute this install on Win32 systems the following command must be run, with appropriate replacements.
|
---|
92 | <pre style="font-size:9px">
|
---|
93 | rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 @deploymentDir@\installIcons.inf
|
---|
94 | </pre>
|
---|
95 |
|
---|
96 | The following is an except from a <code>build.xml</code> file to achieve the above.
|
---|
97 | <pre style="font-size:9px">
|
---|
98 | <target name="Install Icons" depends="">
|
---|
99 | <echo message="Installing Icons"/>
|
---|
100 | <replace file="${basedir}\installIcons.inf">
|
---|
101 | <replacefilter token="@installDir@" value="${installDir}"/>
|
---|
102 | </replace>
|
---|
103 |
|
---|
104 | <exec executable="rundll32.exe">
|
---|
105 | <arg value="setupapi,InstallHinfSection"/>
|
---|
106 | <arg value="DefaultInstall"/>
|
---|
107 | <arg value="132"/>
|
---|
108 | <arg value="${basedir}\installIcons.inf"/>
|
---|
109 | </exec>
|
---|
110 | </target>
|
---|
111 | </pre>
|
---|
112 |
|
---|
113 | Clearly this will not work on Linux, there is a task in developent to run targets based on OS for the moment just
|
---|
114 | add a target element that allows users to select this target if they are running on windows and want icons created.
|
---|
115 |
|
---|
116 | On Windoze95 the 16 bit rundll is required and the command is slightly different. Investigate on the web if you
|
---|
117 | must support Windows95.
|
---|
118 |
|
---|
119 |
|
---|
120 | P.S. does anyone know how to add KDE and of Gnome Icons
|
---|
121 |
|
---|
122 | <!-- content end [segment-end]-->
|
---|
123 | </div>
|
---|
124 | </td>
|
---|
125 | </tr>
|
---|
126 | </tbody>
|
---|
127 | </table>
|
---|
128 | <div id="contents-panel">
|
---|
129 | <!--[segment-file://contents-include.html] menu start -->
|
---|
130 | <div id="contents-menu">
|
---|
131 | <ol class="sidebar" id="root">
|
---|
132 | <li class="panel"><a href="#default" class="folder" onclick="toggle(this)"></a><b>Site map</b>
|
---|
133 | <ol>
|
---|
134 | <li class="sidebar"><a href="introduction.html">Introduction</a></li>
|
---|
135 | <li class="panel"><a href="#default" class="folder" onclick="toggle(this)"></a><b>Developer References</b>
|
---|
136 | <ol>
|
---|
137 | <li class="sidebar"><a href="quickstart.html">Quick Start</a></li>
|
---|
138 | <li class="panel"><a href="#default" class="folder" onclick="toggle(this)"></a><a href="manual.html">Manual</a>
|
---|
139 | <ol class="init-hidden">
|
---|
140 | <li class="sidebar"><a href="manual.html#config">antinstall-config.xml</a></li>
|
---|
141 | <li class="panel"><a href="#default" class="folder" onclick="toggle(this)"></a><a href="manual.html#page">Pages</a>
|
---|
142 | <ol class="init-hidden">
|
---|
143 | <li class="sidebar"><a href="manual.html#pagesplash">Splash Page</a></li>
|
---|
144 | <li class="sidebar"><a href="manual.html#pagetext">Text Page</a></li>
|
---|
145 | <li class="sidebar"><a href="manual.html#pagelicense">License Page</a></li>
|
---|
146 | <li class="sidebar"><a href="manual.html#pageinput">Input Page</a></li>
|
---|
147 | <li class="sidebar"><a href="manual.html#pageprogress">Progress Page</a></li>
|
---|
148 | </ol>
|
---|
149 | </li>
|
---|
150 | <li class="panel"><a href="#default" class="folder" onclick="toggle(this)"></a><a href="manual.html#inputtypes">Input types</a>
|
---|
151 | <ol class="init-hidden">
|
---|
152 | <li class="sidebar"><a href="manual.html#app-root">Application Root</a></li>
|
---|
153 | <li class="sidebar"><a href="manual.html#checkbox">Checkbox</a></li>
|
---|
154 | <li class="sidebar"><a href="manual.html#comment">Comment</a></li>
|
---|
155 | <li class="sidebar"><a href="manual.html#date">Date</a></li>
|
---|
156 | <li class="sidebar"><a href="manual.html#directory">Directory</a></li>
|
---|
157 | <li class="sidebar"><a href="manual.html#file">File</a></li>
|
---|
158 | <li class="sidebar"><a href="manual.html#large-select">Large Select</a></li>
|
---|
159 | <li class="sidebar"><a href="manual.html#password">Password Text</a></li>
|
---|
160 | <li class="sidebar"><a href="manual.html#password-confirm">Confirm Password</a></li>
|
---|
161 | <li class="sidebar"><a href="manual.html#select">Select</a></li>
|
---|
162 | <li class="sidebar"><a href="manual.html#target">Target</a></li>
|
---|
163 | <li class="sidebar"><a href="manual.html#target-select">Target Select</a></li>
|
---|
164 | <li class="sidebar"><a href="manual.html#text">Unvalidated Text</a></li>
|
---|
165 | <li class="sidebar"><a href="manual.html#validated">Validated Text</a></li>
|
---|
166 | <li class="sidebar"><a href="manual.html#extvalidated">Externally Validated Text</a></li>
|
---|
167 | </ol>
|
---|
168 | </li>
|
---|
169 | <li class="sidebar"><a href="manual.html#extractor">Self Extractor</a></li>
|
---|
170 | <li class="sidebar"><a href="manual.html#non-extractor">Non Extractor</a></li>
|
---|
171 | <li class="sidebar"><a href="manual.html#scripts">Start Scripts</a></li>
|
---|
172 | <li class="sidebar"><a href="manual.html#refs">Dynamic References</a></li>
|
---|
173 | <li class="sidebar"><a href="manual.html#pagedisplay">Page Displaying</a></li>
|
---|
174 | </ol>
|
---|
175 | </li>
|
---|
176 | <li class="sidebar"><a href="installertask.html">Installer Ant task</a></li>
|
---|
177 | <li class="sidebar"><a href="validationofconfig.html">Validation of config</a></li>
|
---|
178 | <li class="sidebar"><a href="lookandfeels.html">LookAndFeels</a> <br/>(inc screenshots)</li>
|
---|
179 | <li class="sidebar"><a href="classpathresources.html">Resources/Classpath issues</a></li>
|
---|
180 | <li class="sidebar"><a href="i18n.html">Internationalisation</a></li>
|
---|
181 | <li class="sidebar"><a href="auto.html">Automated installs</a></li>
|
---|
182 | <li class="sidebar"><a href="installtypes.html">Multiple install types</a></li>
|
---|
183 | <li class="sidebar"><a href="posttargets.html">Post display targets</a></li>
|
---|
184 | <li class="sidebar"><a href="icons.html">Button Icons</a></li>
|
---|
185 | <li class="sidebar"><a href="antinstall-config-example.html">Example antinstall-config.xml</a></li>
|
---|
186 | </ol>
|
---|
187 | </li>
|
---|
188 | <li class="sidebar"><a href="manual-ant.html">Ant Manual</a></li>
|
---|
189 | <li class="sidebar"><a href="antlinks.html">Ant links</a></li>
|
---|
190 | <li class="sidebar"><a href="userusage.html">User usage</a></li>
|
---|
191 | <li class="sidebar"><a href="licenses.html">Licenses</a></li>
|
---|
192 | <li class="sidebar"><a href="potentialuses.html">Potential uses</a></li>
|
---|
193 | <li class="sidebar"><a href="roadmap.html">Road Map</a></li>
|
---|
194 | <li class="sidebar"><a href="wanted.html">Wanted</a></li>
|
---|
195 | <li class="sidebar"><a href="dtds.html">DTDs</a></li>
|
---|
196 | <li class="sidebar"><a href="changelog.html">Changelog</a></li>
|
---|
197 | <li class="sidebar"><a href="http://sourceforge.net/projects/antinstaller">Project page on SourceForge</a></li>
|
---|
198 | <li class="sidebar"><a href="java2html/antinstaller/index.html">Java2HTML (main)</a></li>
|
---|
199 | <li class="sidebar"><a href="java2html/ext/index.html">Java2HTML (extensions)</a></li>
|
---|
200 | <li class="sidebar"><a href="http://antinstaller.cvs.sourceforge.net/antinstaller">Public CVS over HTTP</a></li>
|
---|
201 | <li class="sidebar"><a href="http://sourceforge.net/sendmessage.php?touser=616485">Contact AntInstaller Admin</a></li>
|
---|
202 | </ol>
|
---|
203 | </li>
|
---|
204 | </ol>
|
---|
205 | <br/>
|
---|
206 | <br/>
|
---|
207 | </div>
|
---|
208 |
|
---|
209 |
|
---|
210 | <!-- menu end [segment-end]-->
|
---|
211 | </div>
|
---|
212 | <div id="contents-options">
|
---|
213 | <a id="toggle" href="#" onclick="toggleMenu(); return false;">show menu</a>
|
---|
214 | </div>
|
---|
215 |
|
---|
216 | </div>
|
---|
217 | </body>
|
---|
218 | </html>
|
---|