<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Unattended Installation on Remko's Blog</title><link>https://remkoweijnen.nl/blog/categories/unattended-installation/</link><description>Recent content in Unattended Installation on Remko's Blog</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Tue, 19 Feb 2013 15:52:33 +0000</lastBuildDate><atom:link href="https://remkoweijnen.nl/blog/categories/unattended-installation/index.xml" rel="self" type="application/rss+xml"/><item><title>Cannot create shell notification icon error during unattended install</title><link>https://remkoweijnen.nl/blog/2013/02/19/cannot-create-shell-notification-icon-error-during-unattended-install/</link><pubDate>Tue, 19 Feb 2013 15:52:33 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2013/02/19/cannot-create-shell-notification-icon-error-during-unattended-install/</guid><description>&lt;p&gt;I was troubleshooting an unattended installation of a particular application. The install seemed to hang right away so I figured it was presenting some kind of message (error?).&lt;/p&gt; &lt;p&gt;Using a Window Spy tool I made the setup process visible and saw the following message:&lt;/p&gt; &lt;p&gt;&lt;a href="https://remkoweijnen.nl/blog/wp-content/uploads/2013/02/image.webp" class="glightbox thickbox" data-type="image" data-gallery="post-3034"&gt;&lt;img loading="lazy" decoding="async" style="display: inline" title="image" alt="image" src="https://remkoweijnen.nl/blog/wp-content/uploads/2013/02/image_thumb.webp" width="240" height="103" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;The unattended install was supplied by the vendor and apparently they use InstallAware.&lt;/p&gt; &lt;p&gt;The setup tries to create a Tray Icon, probably a setup progress indicator, but this fails because there is no shell running (the installation is pushed from a deployment server).&lt;/p&gt;</description></item><item><title>Script to install SNMP</title><link>https://remkoweijnen.nl/blog/2011/02/04/script-to-install-snmp/</link><pubDate>Fri, 04 Feb 2011 11:22:26 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2011/02/04/script-to-install-snmp/</guid><description>&lt;p&gt;In my project the monitoring group required that SNMP was installed and configured on all servers. &lt;p&gt;I wrote scripts for Windows 2003 and Windows 2008 that I deploy from my Altiris Server.&lt;/p&gt; &lt;p&gt;This is the script for Windows 2003:&lt;/p&gt;&lt;/p&gt;
&lt;div class="codecard"&gt;
 &lt;div class="codehead"&gt;
 &lt;span class="codefile"&gt;&lt;span class="codelang"&gt;batch&lt;/span&gt;&lt;/span&gt;
 &lt;span class="codetools" data-pagefind-ignore&gt;
 &lt;button class="codebtn" type="button" data-copy&gt;Copy&lt;/button&gt;
 &lt;a class="codebtn" download=".bat" href="data:text/plain;charset=utf-8;base64,QGVjaG8gb2ZmCnJlbSBJbnN0YWxsIFNOTVAKCnJlbSBDcmVhdGUgU3lzb2MgQW5zd2VyIEZpbGUKZWNobyBbTmV0T3B0aW9uYWxDb21wb25lbnRzXSAgPkluc3RhbGxTTk1QLnR4dAplY2hvIFNOTVAgPSAxID4&amp;#43;SW5zdGFsbFNOTVAudHh0CmVjaG8uID4&amp;#43;SW5zdGFsbFNOTVAudHh0CmVjaG8gW1NOTVBdID4&amp;#43;SW5zdGFsbFNOTVAudHh0CmVjaG8gQWNjZXB0X0NvbW11bml0eU5hbWUgPSBNWUNPTU1VTklUWTpSZWFkX09ubHkgPj5JbnN0YWxsU05NUC50eHQKZWNobyBBbnlfSG9zdCA9IE5vID4&amp;#43;SW5zdGFsbFNOTVAudHh0CmVjaG8gQ29tbXVuaXR5X05hbWUgPSAiTVlDT01NVU5JVFkiID4&amp;#43;SW5zdGFsbFNOTVAudHh0CmVjaG8gQ29udGFjdF9OYW1lID0gIk1ZQ09OVEFOVCIgID4&amp;#43;SW5zdGFsbFNOTVAudHh0CmVjaG8gTGltaXRfSG9zdCA9IE1ZSVAgID4&amp;#43;SW5zdGFsbFNOTVAudHh0CmVjaG8gTG9jYXRpb24gPSAiTVlMT0NBVElPTiIgID4&amp;#43;SW5zdGFsbFNOTVAudHh0CmVjaG8gU2VuZF9BdXRoZW50aWNhdGlvbiA9IFllcyA&amp;#43;Pkluc3RhbGxTTk1QLnR4dAplY2hvIFNlcnZpY2UgPSBBcHBsaWNhdGlvbnMsIEludGVybmV0LCBFbmQtdG8tRW5kLCBQaHlzaWNhbCwgRGF0YWxpbmsgPj5JbnN0YWxsU05NUC50eHQKZWNobyBUcmFwcyA9IFRIRVRSQVBJUCAgPj5JbnN0YWxsU05NUC50eHQKClN5c29jbWdyLmV4ZSAvaTpcd2luZG93c1xpbmZcc3lzb2MuaW5mIC91OlxXaW5kb3dzXFRlbXBcSW5zdGFsbFNOTVAudHh0IC9y"&gt;Download&lt;/a&gt;
 &lt;/span&gt;
 &lt;/div&gt;
 &lt;div class="codebody"&gt;&lt;pre class="language-batch"&gt;&lt;code class="language-batch"&gt;@echo off
rem Install SNMP

rem Create Sysoc Answer File
echo [NetOptionalComponents] &amp;gt;InstallSNMP.txt
echo SNMP = 1 &amp;gt;&amp;gt;InstallSNMP.txt
echo. &amp;gt;&amp;gt;InstallSNMP.txt
echo [SNMP] &amp;gt;&amp;gt;InstallSNMP.txt
echo Accept_CommunityName = MYCOMMUNITY:Read_Only &amp;gt;&amp;gt;InstallSNMP.txt
echo Any_Host = No &amp;gt;&amp;gt;InstallSNMP.txt
echo Community_Name = &amp;#34;MYCOMMUNITY&amp;#34; &amp;gt;&amp;gt;InstallSNMP.txt
echo Contact_Name = &amp;#34;MYCONTANT&amp;#34; &amp;gt;&amp;gt;InstallSNMP.txt
echo Limit_Host = MYIP &amp;gt;&amp;gt;InstallSNMP.txt
echo Location = &amp;#34;MYLOCATION&amp;#34; &amp;gt;&amp;gt;InstallSNMP.txt
echo Send_Authentication = Yes &amp;gt;&amp;gt;InstallSNMP.txt
echo Service = Applications, Internet, End-to-End, Physical, Datalink &amp;gt;&amp;gt;InstallSNMP.txt
echo Traps = THETRAPIP &amp;gt;&amp;gt;InstallSNMP.txt

Sysocmgr.exe /i:\windows\inf\sysoc.inf /u:\Windows\Temp\InstallSNMP.txt /r&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;</description></item><item><title>Kofax VRS Unattended Install</title><link>https://remkoweijnen.nl/blog/2011/01/18/kofax-vrs-unattended-install/</link><pubDate>Tue, 18 Jan 2011 14:53:39 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2011/01/18/kofax-vrs-unattended-install/</guid><description>&lt;p&gt;Recently I needed to create an Unattended Install for an application that uses a piece of software (for scanning) called &lt;a href="http://www.kofax.com/vrs-virtualrescan/" target="_blank"&gt;Kofax VRS&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;This Kofax software comes with an .msi file but there was no documentation on the install options.&lt;/p&gt;
&lt;p&gt;In fact it didn&amp;rsquo;t seem like the Vendor anticipated on an Unatttended Install.&lt;/p&gt;
&lt;p&gt;I browsed in the msi file using &lt;a href="http://msdn.microsoft.com/en-us/library/aa370557(v=vs.85).aspx" target="_blank"&gt;Microsoft&amp;rsquo;s Orca tool&lt;/a&gt; and tried some of the properties I found in the public properties table.&lt;/p&gt;</description></item><item><title>Another packaging challenge</title><link>https://remkoweijnen.nl/blog/2011/01/17/another-packaging-challenge/</link><pubDate>Mon, 17 Jan 2011 09:15:37 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2011/01/17/another-packaging-challenge/</guid><description>&lt;p&gt;Another post on something that happened last week, this time it&amp;rsquo;s about a Java based Application again.&lt;/p&gt;
&lt;p&gt;This particular application wanted to download three DLL&amp;rsquo;s from the Webserver to the Java bin directory.&lt;/p&gt;
&lt;p&gt;This presents us with several issues on a multi user server such as a Citrix of Terminal Server:&lt;/p&gt;
&lt;ol&gt;
	&lt;li&gt;&lt;span style="color: #35383d;"&gt;The user does not have write permissions in this directory&lt;/span&gt;&lt;/li&gt;
	&lt;li&gt;&lt;span style="color: #35383d;"&gt;If we we give the user write permissions here what happens when the DLL's are in use by another user?&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
I assumed that if I preinstalled the DLL's the application wouldn't try to overwrite them but that didn't work.
&lt;p&gt;Then I monitored with Process Monitor if the Application wrote some kind of check file but at first I didn&amp;rsquo;t find anything.&lt;/p&gt;
&lt;p&gt;So I decided to use the CorrectFilePaths shim to redirect the DLL&amp;rsquo;s to the user&amp;rsquo;s homedirectory (see &lt;a href="https://remkoweijnen.nl/blog/2010/12/28/using-the-correctfilepaths-shim-to-redirect-an-ini-file-to-a-writable-location/" target="_blank"&gt;Using the CorrectFilePaths shim to redirect an ini file to a writable location&lt;/a&gt; for an explanation).&lt;/p&gt;</description></item><item><title>Troubleshoot CorrectFilePath shim</title><link>https://remkoweijnen.nl/blog/2011/01/16/troubleshoot-correctfilepath-shim/</link><pubDate>Sun, 16 Jan 2011 20:42:03 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2011/01/16/troubleshoot-correctfilepath-shim/</guid><description>&lt;p&gt;A few days ago I was packaging an application that was writing an INI file in the application directory.&lt;/p&gt;
&lt;p&gt;If you have read my earlier article, &lt;a href="https://remkoweijnen.nl/blog/2010/12/28/using-the-correctfilepaths-shim-to-redirect-an-ini-file-to-a-writable-location/" target="_blank"&gt;Using the CorrectFilePaths shim to redirect an ini file to a writable location&lt;/a&gt;, then you will probably think: create a nice shim and redirect that ini file!&lt;/p&gt;
&lt;p&gt;But this application had a few challenges, the first being that it writes %COMPUTERNAME%.INI. The application&amp;rsquo;s developer probably assumed that a user is bound to one pc and that no other user&amp;rsquo;s use that pc.&lt;/p&gt;
&lt;p&gt;To solve it we we need to catch all possible computer names (it would be nice if the CorrectFilePaths shims was able to accept wildcards and environment variables).&lt;/p&gt;
&lt;p&gt;But it doesn&amp;rsquo;t so it means we have to add a parameter for each possible computer name. In my case that was doable because I have only 8 Citrix servers.&lt;/p&gt;
&lt;p&gt;So I created a Fix using the Application Compatibility Manager as described in my previous post.&lt;/p&gt;
&lt;p&gt;However it didn&amp;rsquo;t work, so I started to trace what happens.&lt;/p&gt;</description></item><item><title>Java Webapplication, certificates and Citrix</title><link>https://remkoweijnen.nl/blog/2011/01/11/java-webapplication-certificates-and-citrix/</link><pubDate>Tue, 11 Jan 2011 15:23:47 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2011/01/11/java-webapplication-certificates-and-citrix/</guid><description>&lt;p&gt;Yesterday I created an Unattended Installation of a webapplication. Of course it was &amp;ldquo;just a web link&amp;rdquo; and the application vendor usually says: you don&amp;rsquo;t need to install it just go the URL and that&amp;rsquo;s it.&lt;/p&gt;
&lt;p&gt;The reality is usually that you go to the URL and need to install several (ActiveX) components and maybe other dependencies such as Java.&lt;/p&gt;
&lt;p&gt;While a user may have the permissions for this on his own pc, on a Citrix or Terminal Server environment this is highly unlikely.&lt;/p&gt;
&lt;p&gt;So we need to package and pre-install this for the users.&lt;/p&gt;
&lt;p&gt;Nothing special so far but this particular application had some special things that were interesting enough to blog about.&lt;/p&gt;
&lt;p&gt;So let&amp;rsquo;s start with what happened, I visited the URL of an application called Centric Key 2 Financien.&lt;/p&gt;
&lt;p&gt;First I got a few popups with Certificates that needed to be accepted:&lt;/p&gt;
&lt;p&gt;&lt;a class="glightbox" data-type="image" data-gallery="post-1147" href="https://remkoweijnen.nl/blog/wp-content/uploads/2011/01/Cert1.png"&gt;&lt;img loading="lazy" decoding="async" style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="Cert1" src="https://remkoweijnen.nl/blog/wp-content/uploads/2011/01/Cert1_thumb.webp" border="0" alt="Cert1" width="244" height="150" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The application&amp;rsquo;s instructions say that the user must accept this and set the &amp;ldquo;Always trust content from this publisher&amp;rdquo; checkbox.&lt;/p&gt;</description></item><item><title>Fixing Applications: The Next Step</title><link>https://remkoweijnen.nl/blog/2011/01/07/fixing-applications-the-next-step/</link><pubDate>Fri, 07 Jan 2011 14:39:55 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2011/01/07/fixing-applications-the-next-step/</guid><description>&lt;p&gt;Lately I wrote a few articles about fixing bad applications using Compatibility Shims. If you didn&amp;rsquo;t read them yet, here are the links: &lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;
&lt;div&gt;&lt;a href="https://remkoweijnen.nl/blog/2010/12/28/using-the-correctfilepaths-shim-to-redirect-an-ini-file-to-a-writable-location/"&gt;Using the CorrectFilePaths shim to redirect an ini file to a writable location&lt;/a&gt;&lt;/div&gt;&lt;/li&gt;
	&lt;li&gt;
&lt;div&gt;&lt;a href="https://remkoweijnen.nl/blog/2010/12/28/using-the-correctfilepaths-shim-with-visual-basic-applications/"&gt;Using the CorrectFilePaths Shim with Visual Basic Applications&lt;/a&gt;&lt;/div&gt;&lt;/li&gt;
	&lt;li&gt;
&lt;div&gt;&lt;a href="https://remkoweijnen.nl/blog/2011/01/06/redirect-global-object-to-local-objects-aka-fix-that-bad-app/"&gt;Redirect Global Object to Local Objects (aka fix that bad app!)&lt;/a&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;
I also described that you can install an Application Compatibility Database using the sdbinst command.
&lt;p&gt;At first I just took a script task in my Altiris Server to deploy the database using sdbinst -q &amp;lt;dbname&amp;gt; but later on I got a better idea.&lt;/p&gt;</description></item><item><title>Another Oracle Error</title><link>https://remkoweijnen.nl/blog/2011/01/07/another-oracle-error/</link><pubDate>Fri, 07 Jan 2011 13:26:20 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2011/01/07/another-oracle-error/</guid><description>&lt;p&gt;My collegue that is working with me on the current project was packaging another application that uses Oracle.&lt;/p&gt;
&lt;p&gt;The interesting thing about it is that he ran into the same error I did: the Oracle client tries to create (and access) an Object in the Global namespace.&lt;/p&gt;</description></item><item><title>Redirect Global Object to Local Objects (aka fix that bad app!)</title><link>https://remkoweijnen.nl/blog/2011/01/06/redirect-global-object-to-local-objects-aka-fix-that-bad-app/</link><pubDate>Thu, 06 Jan 2011 14:34:11 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2011/01/06/redirect-global-object-to-local-objects-aka-fix-that-bad-app/</guid><description>&lt;p&gt;Today I was working on Unattended Installation of an Application called SmartDocuments.&lt;/p&gt;
&lt;p&gt;The application seemed to behave nicely on a Multi User (Citrix/Terminal Server) environment: it writes user configuration to the user part of the registry and writes configuration files in a user accessible path.&lt;/p&gt;
&lt;p&gt;When testing with a normal user account I ran into a problem though, I got an Oracle ORA-01019 error message:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://remkoweijnen.nl/blog/wp-content/uploads/2011/01/ora01019.webp" class="glightbox" data-type="image" data-gallery="post-1083"&gt;&lt;img loading="lazy" decoding="async" src="https://remkoweijnen.nl/blog/wp-content/uploads/2011/01/ora01019-small.webp" alt="ORA01019" width="430" height="57" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The English message is ORA01019: unable to allocate memory in the user side.&lt;/p&gt;</description></item><item><title>Modify Internet Explorer 8 MUI Pack to install a single language</title><link>https://remkoweijnen.nl/blog/2011/01/03/modify-internet-explorer-8-mui-pack-to-install-a-single-language/</link><pubDate>Mon, 03 Jan 2011 12:10:22 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2011/01/03/modify-internet-explorer-8-mui-pack-to-install-a-single-language/</guid><description>&lt;p&gt;Today I wanted to install the Dutch Language pack for Internet Explorer 8, the Dutch language comes as part of the &lt;a title="Windows Internet Explorer 8 MUI Pack for Windows Server 2003 SP2" href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=242bf57a-9dab-4ea9-ba46-33c0e32020a4&amp;amp;displaylang=en" target="_blank"&gt;Windows Internet Explorer 8 MUI Pack&lt;/a&gt; (in my case the version for Windows Server 2003 SP2).&lt;/p&gt;
&lt;p&gt;If you install the MUI Pack you will always end up with all 35 (!) languages installed. This behaviour is the same as the language pack for Internet Explorer 7 that I wrote about earlier (see &lt;a title="Modifying Microsoft Updates and/or hotfixes" href="https://remkoweijnen.nl/blog/2009/05/12/modifying-microsoft-updates-andor-hotfixes" target="_blank"&gt;Modifying Microsoft Updates and/or hotfixes&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The solution is really the same as for the IE7 language pack: you modify the inf file (in my case update_srv03.inf) but if you run update.exe it will refuse to use your modified inf file:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://remkoweijnen.nl/blog/wp-content/uploads/2011/01/ie8muierror.webp" class="glightbox" data-type="image" data-gallery="post-1055"&gt;&lt;img loading="lazy" decoding="async" src="https://remkoweijnen.nl/blog/wp-content/uploads/2011/01/ie8muierror-small1.webp" alt="ie8muierror" width="430" height="76" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;So we need to patch update.exe to accept your modified version!&lt;/p&gt;</description></item><item><title>Unattended Installation of IBM WebSphere MQ</title><link>https://remkoweijnen.nl/blog/2010/12/29/unattended-installation-of-ibm-websphere-mq/</link><pubDate>Wed, 29 Dec 2010 16:50:14 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2010/12/29/unattended-installation-of-ibm-websphere-mq/</guid><description>&lt;p&gt;Today I needed to create a silent install for IBM WebSphere MQ, in my case version 6.0.2.10.&lt;/p&gt;
&lt;p&gt;I started by reading IBM&amp;rsquo;s documentation: &lt;a title="WebSphere MQ Unattended (silent) installation" href="http://publib.boulder.ibm.com/infocenter/wmqv6/v6r0/index.jsp?topic=/com.ibm.mq.amqtac.doc/wq10630_.htm" target="_blank"&gt;WebSphere MQ Unattendend (silent) Installation&lt;/a&gt; which desribes that we can &lt;a title="IBM WebSphere MQ" href="http://publib.boulder.ibm.com/infocenter/wmqv6/v6r0/index.jsp?topic=/com.ibm.mq.amqtac.doc/wq10630_.htm" target="_blank"&gt;create a response file&lt;/a&gt; using the SAVEINI parameter.&lt;/p&gt;
&lt;p&gt;So I recorded a response file and tested the install using the &lt;a title="WebSphere MQ Using a response file with MsiExec" href="http://publib.boulder.ibm.com/infocenter/wmqv6/v6r0/index.jsp?topic=/com.ibm.mq.amqtac.doc/wq10630_.htm" target="_blank"&gt;USEINI parameter&lt;/a&gt; as indicated by the documentation.&lt;/p&gt;
&lt;p&gt;However the installation failed producing only this error message:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://remkoweijnen.nl/blog/wp-content/uploads/2010/12/websphereerror.webp" class="glightbox" data-type="image" data-gallery="post-1043"&gt;&lt;img loading="lazy" decoding="async" src="https://remkoweijnen.nl/blog/wp-content/uploads/2010/12/websphereerror-small.webp" alt="One or more problems occured. Review the trace and/or log file for details. (AMQ4739)" width="430" height="102" /&gt;&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Using the CorrectFilePaths Shim with Visual Basic Applications</title><link>https://remkoweijnen.nl/blog/2010/12/28/using-the-correctfilepaths-shim-with-visual-basic-applications/</link><pubDate>Tue, 28 Dec 2010 16:14:44 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2010/12/28/using-the-correctfilepaths-shim-with-visual-basic-applications/</guid><description>&lt;p&gt;Earlier today I wrote about &lt;a title="Using the CorrectFilePaths shim to redirect an ini file to a writable location" href="https://remkoweijnen.nl/blog/2010/12/28/using-the-correctfilepaths-shim-to-redirect-an-ini-file-to-a-writable-location/" target="_blank"&gt;Using the CorrectFilePaths shim to redirect an ini file to a writable location&lt;/a&gt; and believe it or not the next application I was working with today needed a nice shim as well.&lt;/p&gt;
&lt;p&gt;This one was a little more complicated and that&amp;rsquo;s why I am writing a second post about it.&lt;/p&gt;
&lt;p&gt;I am not sure if this is actuall documented somewhere but a Shim is not applied to Applications or DLL&amp;rsquo;s that reside in the system directory.&lt;/p&gt;
&lt;p&gt;The application in question here is a Visual Basic 6 application which uses the VB6 runtime, msvbvm60.dll which resides usually in %systemroot%\system32.&lt;/p&gt;
&lt;p&gt;We need to do two things if we want to apply the shim to msvbvm60.dll:&lt;/p&gt;</description></item><item><title>Using the CorrectFilePaths shim to redirect an ini file to a writable location</title><link>https://remkoweijnen.nl/blog/2010/12/28/using-the-correctfilepaths-shim-to-redirect-an-ini-file-to-a-writable-location/</link><pubDate>Tue, 28 Dec 2010 13:52:01 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2010/12/28/using-the-correctfilepaths-shim-to-redirect-an-ini-file-to-a-writable-location/</guid><description>&lt;p&gt;Today I needed to package an application called PlesirReality and I noticed that it wrote an ini file into the program directory (in my case D:\Apps\PlesirReality).&lt;/p&gt;
&lt;p&gt;I looked into this ini file (areastate.ini) and it writes user settings in there, like the last position of the window etc.&lt;/p&gt;
&lt;p&gt;We can see this easily with Process Monitor:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://remkoweijnen.nl/blog/wp-content/uploads/2010/12/usersrweijnenappdataroamingblogdeskuserdataimagesplesirmon11.webp" class="glightbox" data-type="image" data-gallery="post-1030"&gt;&lt;img loading="lazy" decoding="async" src="https://remkoweijnen.nl/blog/wp-content/uploads/2010/12/usersrweijnenappdataroamingblogdeskuserdataimagesplesirmon1-small7.webp" alt="PlesirMon1" width="430" height="193" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This presents us with several problems:&lt;/p&gt;
&lt;p&gt;The first problem is that the user does not have write permission in this directory so upon application exit we get an ugly error message:&lt;/p&gt;
&lt;img loading="lazy" decoding="async" src="https://remkoweijnen.nl/blog/wp-content/uploads/2010/12/usersrweijnenappdataroamingblogdeskuserdataimagesplesiruglyerror5.webp" alt="PlesirUglyError" width="428" height="119" /&gt;
&lt;p&gt;We could &amp;ldquo;fix&amp;rdquo; this by giving the user write permissions to this directory or even to this specific file but here comes the seconds problem:&lt;/p&gt;
&lt;p&gt;On a multi user environment like Citrix or Terminal Server/Remote Desktop Services it means that when one user exists he will he save his settings for all users.&lt;/p&gt;
&lt;p&gt;And then we have a third problem:&lt;/p&gt;
&lt;p&gt;When a users starts the application on another server he will not get the expected settings because each server will have it&amp;rsquo;s own copy of this ini file.&lt;/p&gt;</description></item><item><title>Unattended Installation of the Oracle Client</title><link>https://remkoweijnen.nl/blog/2010/12/27/unattended-installation-of-the-oracle-client/</link><pubDate>Mon, 27 Dec 2010 17:20:48 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2010/12/27/unattended-installation-of-the-oracle-client/</guid><description>&lt;p&gt;Last week I needed to an unattended installation of the Oracle Client, in my case version 10.2.0.1.0.&lt;/p&gt;
&lt;p&gt;Oracle has a record switch that allows you to record an installation and generate a response file using: setup -record -destinationFile response_file_name. This is documented &lt;a title="Installing Oracle Database Client Using Response Files" href="http://download.oracle.com/docs/cd/B19306_01/install.102/b14312/advance.htm#BBAEDBJG" target="_blank"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;When you are finished you can use this response file to perform the unattended install, eg setup -silent -responseFile response_file_name.&lt;/p&gt;
&lt;p&gt;There is a problem though, the installer (setup.exe) launches a java based installer and immediately returns.&lt;/p&gt;
&lt;p&gt;This was a problem for me since I cannot deploy a dependant application if the Oracle install hasn&amp;rsquo;t finished yet.&lt;/p&gt;
&lt;p&gt;I did some googling and found a lot of questions about this subject and saw a common resolution where a script is watching a certain file that is creating when the installation has finished in a loop.&lt;/p&gt;
&lt;p&gt;I figured there should be a better wait so I to a closer look at the installer with &lt;a title="The IDA Pro Disassebler and Debugger" href="http://www.hex-rays.com/idapro/" target="_blank"&gt;Ida Pro&lt;/a&gt;. I noticed that setup.exe launches another exe. called oui.exe (Oracle Universal Installer) which in turn launches Java.&lt;/p&gt;</description></item><item><title>Packaging an ActiveX Component: Easy?</title><link>https://remkoweijnen.nl/blog/2010/12/20/packaging-an-activex-component/</link><pubDate>Mon, 20 Dec 2010 20:19:18 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2010/12/20/packaging-an-activex-component/</guid><description>&lt;p&gt;Today I needed to package an applications that I was told was very simple. If I hear something like that my first thought is always &amp;ldquo;hmmm&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;So I prepared a machine to build the package and followed the instructions which were to go to a specific URL and download the package (probably an ActiveX control from there).&lt;/p&gt;
&lt;p&gt;I opened the URL and immediately got an error message:&lt;/p&gt;
&lt;img loading="lazy" decoding="async" src="https://remkoweijnen.nl/blog/wp-content/uploads/2010/12/lciderror.webp" alt="The specified LICD is not available" width="413" height="290" /&gt;
&lt;p&gt;The error message 0x80004005 is not very helpfull since it stands for E_FAIL (winerror.h).&lt;/p&gt;</description></item><item><title>Packaging an application – Auto Accept the EULA</title><link>https://remkoweijnen.nl/blog/2010/12/17/packaging-an-application-auto-accept-the-eula/</link><pubDate>Fri, 17 Dec 2010 17:10:03 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2010/12/17/packaging-an-application-auto-accept-the-eula/</guid><description>&lt;p&gt;Yesterday I was packaging an application called Kluwer Juridische Bibliotheek. When the user first starts this application a screen with the License Conditions pops up and it must be accepted:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://remkoweijnen.nl/blog/wp-content/uploads/2010/12/kluwereula.webp" class="glightbox" data-type="image" data-gallery="post-879"&gt;&lt;img loading="lazy" decoding="async" src="https://remkoweijnen.nl/blog/wp-content/uploads/2010/12/kluwereula-small.webp" alt="KluwerEULA" width="430" height="399" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I always try to remove such things as I don&amp;rsquo;t think it&amp;rsquo;s necessary for every user to accept it.&lt;/p&gt;</description></item><item><title>Packaging an Application that uses the BDE</title><link>https://remkoweijnen.nl/blog/2010/12/14/packaging-an-application-that-uses-the-bde/</link><pubDate>Tue, 14 Dec 2010 21:12:58 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2010/12/14/packaging-an-application-that-uses-the-bde/</guid><description>&lt;p&gt;Today I needed to package an application that uses the Borland Database Engine (BDE).&lt;/p&gt;
&lt;p&gt;The BDE is a database engine/connectivity component commonly used in Delphi and C++ Builder applications. It has been deprecated since 2000 when it was replaced by dbExpress.&lt;/p&gt;
&lt;p&gt;But it&amp;rsquo;s still widely used so you may still find applications that require the BDE.&lt;/p&gt;
&lt;p&gt;In my environment I already have a package for the BDE itsself. But the application I needed to package today, needs to have an Alias addded.&lt;/p&gt;
&lt;p&gt;This is usually done manually by going into the BDEADMIN control panel applet or by copying the file where BDE saves the aliases (IDAPI32.CFG).&lt;/p&gt;
&lt;p&gt;Here is a screenshot of the Alias my application needs (it uses an Interbase database):&lt;/p&gt;
&lt;p&gt;&lt;a href="https://remkoweijnen.nl/blog/wp-content/uploads/2010/12/bde.webp" class="glightbox" data-type="image" data-gallery="post-868"&gt;&lt;img loading="lazy" decoding="async" src="https://remkoweijnen.nl/blog/wp-content/uploads/2010/12/bde-small.webp" alt="BDE" width="430" height="302" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I didn&amp;rsquo;t like the copy approach and didn&amp;rsquo;t even consider the manual option so I wrote 2 little tools.&lt;/p&gt;</description></item><item><title>Unattended Visual J# Install returns error 4122</title><link>https://remkoweijnen.nl/blog/2010/11/26/unattended-visual-j-install-returns-error-4122/</link><pubDate>Fri, 26 Nov 2010 11:53:30 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2010/11/26/unattended-visual-j-install-returns-error-4122/</guid><description>&lt;p&gt;This means you are installing the wrong edition, eg x86 version on an x64 OS.&lt;/p&gt;
&lt;p&gt;All available version are listed on the MSDN &lt;a href="http://msdn.microsoft.com/en-us/vjsharp/bb188598" target="_blank"&gt;Visual J# Redistributable Packages&lt;/a&gt; page.&lt;/p&gt;
&lt;p&gt;Related: &lt;a title="The case of the VMware vSphere Client" href="https://remkoweijnen.nl/blog/2010/10/27/the-case-of-the-vmware-vsphere-client/"&gt;The case of the VMware vSphere Client&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Citrix and Java JRE Versions</title><link>https://remkoweijnen.nl/blog/2010/11/15/citrix-and-java-jre-versions/</link><pubDate>Mon, 15 Nov 2010 22:41:33 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2010/11/15/citrix-and-java-jre-versions/</guid><description>&lt;p&gt;If you have ever installed Citrix Presentation Server/XenApp or one of the management consoles then you have probably dealt with Java versions.&lt;/p&gt;
&lt;p&gt;Citrix is very picky about the Java version so it&amp;rsquo;s usually best to initially install the Jre version that is delivered with the product.&lt;/p&gt;
&lt;p&gt;In my case however I needed to install the CMC for Xenapp 5 on Windows 2003, it requires JRE 5.0 Update 9 but this version was undesirable.&lt;/p&gt;
&lt;p&gt;So I tried to install the CMC with the current JRE version (1.6.0_22 at this time) but it makes the Installer exit immediately:&lt;/p&gt;
&lt;img loading="lazy" decoding="async" src="https://remkoweijnen.nl/blog/wp-content/uploads/2010/11/cmcjreerror.webp" alt="CMCJreError" width="416" height="216" /&gt;</description></item></channel></rss>