source: release-kits/lirk3/bin/ant-installer/web/antricks.html@ 14982

Last change on this file since 14982 was 14982, checked in by oranfry, 16 years ago

initial import of LiRK3

File size: 10.9 KB
Line 
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&amp;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&amp;atid=696615">RFEs</a>
39 <a class="tpbutton" target="_top" href="http://sourceforge.net/tracker/?group_id=123466&amp;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&amp;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>
60The back end of AntInstaller is Ant so you can do anything with AntInstaller that Ant can do.
61However there are a few things that an installer should do that you may not be aware of and this
62page 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>
66To get Ant to create Windows shortcuts you have to set up a few hooks into standard windows libraries.
67Essentilly you need to use RunDLL and pass a windows setup .INF file.
68You can not deliver the .INF file correct for every system so you should use the replace task on the delivered file
69to set the final location of the .ICO files that will be used and the final location of the executables or
70files to create shortcuts to.<br><br>
71
72<b>installIcons.inf</b> N.B. the ridiculous multiple quotes are obligatory. After deploying this file
73the <code>@installDir@</code> must be replaced with the actual installation directory using Ant replace.
74<pre style="font-size:9px">
75[version]
76signature="$chicago$"
77
78[DefaultInstall]
79UpdateInis=Addlink
80
81[AddLink]
82setup.ini, progman.groups,, "group0=DBusViewer (enhanced)"
83setup.ini, group0,, ""DBusViewer (enhanced)""
84setup.ini, group0,, """DBusViewer (enhanced)"",""cmd /c """"@installDir@\bin\MessageViewer.cmd"""""",""@installDir@\bin\favicon.ico"",0,"
85
86setup.ini, progman.groups,, "group0=DBusViewer (enhanced)"
87setup.ini, group0,, ""DBusViewer (enhanced)""
88setup.ini, group0,, """Edit Start Script"",""notepad.exe "@installDir@\bin\MessageViewer.cmd""",,0,"
89</pre>
90
91To execute this install on Win32 systems the following command must be run, with appropriate replacements.
92<pre style="font-size:9px">
93rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 @deploymentDir@\installIcons.inf
94</pre>
95
96The following is an except from a <code>build.xml</code> file to achieve the above.
97<pre style="font-size:9px">
98&lt;target name="Install Icons" depends=""&gt;
99&lt;echo message="Installing Icons"/&gt;
100 &lt;replace file="${basedir}\installIcons.inf"&gt;
101 &lt;replacefilter token="@installDir@" value="${installDir}"/&gt;
102 &lt;/replace&gt;
103
104 &lt;exec executable="rundll32.exe"&gt;
105 &lt;arg value="setupapi,InstallHinfSection"/&gt;
106 &lt;arg value="DefaultInstall"/&gt;
107 &lt;arg value="132"/&gt;
108 &lt;arg value="${basedir}\installIcons.inf"/&gt;
109 &lt;/exec&gt;
110&lt;/target&gt;
111</pre>
112
113Clearly this will not work on Linux, there is a task in developent to run targets based on OS for the moment just
114add a target element that allows users to select this target if they are running on windows and want icons created.
115
116On Windoze95 the 16 bit rundll is required and the command is slightly different. Investigate on the web if you
117must support Windows95.
118
119
120P.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>
Note: See TracBrowser for help on using the repository browser.