<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>ThinApp on Remko's Blog</title><link>https://remkoweijnen.nl/blog/tags/thinapp/</link><description>Recent content in ThinApp on Remko's Blog</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Tue, 15 Jan 2013 11:50:07 +0000</lastBuildDate><atom:link href="https://remkoweijnen.nl/blog/tags/thinapp/index.xml" rel="self" type="application/rss+xml"/><item><title>Return username instead of computername in a ThinApp</title><link>https://remkoweijnen.nl/blog/2013/01/15/return-username-instead-of-computername-in-a-thinapp/</link><pubDate>Tue, 15 Jan 2013 11:50:07 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2013/01/15/return-username-instead-of-computername-in-a-thinapp/</guid><description>&lt;p&gt;&lt;img style="display: inline; float: right" alt="File:VMware ThinApp v4.0 icon.png" align="right" src="http://upload.wikimedia.org/wikipedia/commons/c/c0/VMware_ThinApp_v4.0_icon.png" width="95" height="95" /&gt;One of the lesser known features of VMware ThinApp is that you can supply a Virtual Computer name.&lt;/p&gt; &lt;p&gt;This is documented as follows in the &lt;a href="http://www.vmware.com/pdf/thinapp47_packageini_reference.pdf"&gt;package.ini reference guide&lt;/a&gt;:&lt;/p&gt; &lt;p&gt;&lt;strong&gt;VirtualComputerName Parameter&lt;/strong&gt; &lt;br /&gt;The VirtualComputerName parameter determines whether to rename the computer name, to avoid naming conflicts between the capture process and the deployment process.&lt;/p&gt;</description></item><item><title>Office 2010 very slow when ThinApped</title><link>https://remkoweijnen.nl/blog/2012/12/11/office-2010-very-slow-when-thinapped/</link><pubDate>Tue, 11 Dec 2012 09:00:11 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2012/12/11/office-2010-very-slow-when-thinapped/</guid><description>&lt;p&gt;&lt;a class="glightbox thickbox" href="https://remkoweijnen.nl/blog/wp-content/uploads/2012/12/image17.webp" data-type="image" data-gallery="post-2905"&gt;&lt;img loading="lazy" decoding="async" style="display: inline; float: right" title="image" alt="image" align="right" src="https://remkoweijnen.nl/blog/wp-content/uploads/2012/12/image_thumb17.webp" width="83" height="83" /&gt;&lt;/a&gt;This blog is about an issue with VMware ThinApp and Office 2010 I discovered a while ago.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;u&gt;Environment&lt;/u&gt;&lt;/strong&gt; &lt;br /&gt;Customer is using Office 2003 natively on a Citrix XenApp 5 environment. Some users had a business need for Office 2010, therefore a ThinApp with Office 2010 was created (this customer uses ThinApp for App-Virt).&lt;/p&gt; &lt;p&gt;&lt;font color="#35383d"&gt;To make the picture complete: Thinapp version is 4.7.2-771812&lt;/font&gt; &lt;font color="#35383d"&gt;and Office version is 2010 SP1 (14.0.6024.1000)&lt;/font&gt; .&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;u&gt;Symptoms&lt;/u&gt;&lt;/strong&gt; &lt;br /&gt;&lt;a class="glightbox thickbox" href="https://remkoweijnen.nl/blog/wp-content/uploads/2012/12/image18.webp" data-type="image" data-gallery="post-2905"&gt;&lt;img loading="lazy" decoding="async" style="margin: 4px 6px 0px 0px; display: inline; float: left" title="image" alt="image" align="left" src="https://remkoweijnen.nl/blog/wp-content/uploads/2012/12/image_thumb18.webp" width="46" height="44" /&gt;&lt;/a&gt;Users complained that Office 2010 was very slow. Most noticeable was Outlook 2010 which was completely unusable.&lt;/p&gt; &lt;p&gt;Outlook startup time was minutes rather than seconds and while starting it seemed to delay on loading profile.&lt;/p&gt; &lt;p&gt;When Outlook was finally started, switching between folders and layouts felt really sluggish. &lt;/p&gt; &lt;p&gt;For example when switching from Calendar to Inbox took a few seconds, after which it would take almost 20 seconds for the e-mails to show. Switching between e-mail would take 2-3 seconds to display the contents in the reading pane.&lt;/p&gt;</description></item><item><title>Running multiple instances of Lync (howto)</title><link>https://remkoweijnen.nl/blog/2012/03/07/running-multiple-instances-of-lync-howto/</link><pubDate>Wed, 07 Mar 2012 22:55:37 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2012/03/07/running-multiple-instances-of-lync-howto/</guid><description>&lt;p&gt;&lt;a href="https://remkoweijnen.nl/blog/wp-content/uploads/2012/03/image4.webp" class="glightbox" data-type="image" data-gallery="post-2513"&gt;&lt;img loading="lazy" decoding="async" style="margin: 0px 0px 0px 5px; display: inline; float: right" title="image" alt="image" align="right" src="https://remkoweijnen.nl/blog/wp-content/uploads/2012/03/image_thumb4.webp" width="58" height="59" /&gt;&lt;/a&gt;Yesterday I showed a &lt;a href="https://remkoweijnen.nl/blog/2012/03/06/run-multiple-instances-of-lync-2010poc/" target="_blank"&gt;video&lt;/a&gt; demonstrating it's possible to run multiple instances of the Microsoft Lync 2010 client simultaneously.&lt;/p&gt; &lt;p&gt;A little warning before we go on: the Lync Client was not designed to run with multiple instances. Or better said: it was designed specifically to prevent this, let's see how it does this:&lt;/p&gt; &lt;p&gt;On startup Lync calls an internal function called COcAppNoUI::InitializeMainInstance. In this function it creates a &lt;a href="http://msdn.microsoft.com/en-us/library/windows/desktop/ms684266(v=vs.85).aspx" target="_blank"&gt;Mutex&lt;/a&gt; named "Office Communicator_" in the Global &lt;a href="https://remkoweijnen.nl/blog/2009/01/27/accessing-kernel-objects-in-other-sessions/" target="_blank"&gt;namespace&lt;/a&gt;. It also creates an &lt;a href="http://msdn.microsoft.com/en-us/library/windows/desktop/ms682655(v=vs.85).aspx" target="_blank"&gt;Event&lt;/a&gt; in the Global namespace called "COMMUNICATOR-".&lt;/p&gt; &lt;p&gt;When a second instance of Lync is launched it checks if the Global Mutex exists and if it does it fires the Global Event. The Main instance has a thread that waits for this event using the &lt;a href="http://msdn.microsoft.com/en-us/library/windows/desktop/ms687025(v=vs.85).aspx" target="_blank"&gt;WaitForMultipleObjects&lt;/a&gt; API.&lt;/p&gt;</description></item><item><title>Harmony Client crashes upon exit</title><link>https://remkoweijnen.nl/blog/2012/01/31/harmony-client/</link><pubDate>Tue, 31 Jan 2012 16:37:08 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2012/01/31/harmony-client/</guid><description>&lt;p&gt;Today I was troubleshooting the application "Harmony Client" which crashed upon exiting:&lt;/p&gt; &lt;p&gt;&lt;a href="https://remkoweijnen.nl/blog/wp-content/uploads/2012/01/image21.webp" class="glightbox" data-type="image" data-gallery="post-2368"&gt;&lt;img loading="lazy" decoding="async" style="display: inline" title="HARMONY_Client.exe - Toepassingsfout" alt="Toepassingspop-up: HARMONY_Client.exe - Toepassingsfout : De instructie op 0x77e621b6 verwijst naar geheugen op 0x4b750000. Een lees- of schrijfbewerking op het geheugen is mislukt: | The memory could not be read." src="https://remkoweijnen.nl/blog/wp-content/uploads/2012/01/image_thumb21.webp" width="415" height="84" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;The application had been thinapped and the error only appeared when starting the thinapped version. &lt;br /&gt;&lt;/p&gt;</description></item><item><title>Error 372 in Thinapped Visual Basic Application</title><link>https://remkoweijnen.nl/blog/2012/01/03/error-372-in-thinapped-visual-basic-application/</link><pubDate>Tue, 03 Jan 2012 22:34:29 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2012/01/03/error-372-in-thinapped-visual-basic-application/</guid><description>&lt;p&gt;&lt;a href="https://remkoweijnen.nl/blog/wp-content/uploads/2012/01/image.webp" class="glightbox" data-type="image" data-gallery="post-2270"&gt;&lt;img loading="lazy" decoding="async" style="display: inline; float: right" title="image" alt="image" align="right" src="https://remkoweijnen.nl/blog/wp-content/uploads/2012/01/image_thumb.webp" width="38" height="39" /&gt;&lt;/a&gt;Today I was troubleshooting a Thinapped Visual Basic Application. The application halts with a Run-time error '372' when trying to run a report:&lt;/p&gt; &lt;p&gt;&lt;a href="https://remkoweijnen.nl/blog/wp-content/uploads/2012/01/image1.webp" class="glightbox" data-type="image" data-gallery="post-2270"&gt;&lt;img loading="lazy" decoding="async" style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Proaz" border="0" alt="Run-time error 372 Failed to load control &amp;#39;CrystalActiveReportViewer&amp;#39; from crviewer.dll. Your version of crviewer.dll may be outdated. Make sure you are using the control that was provided with your application" src="https://remkoweijnen.nl/blog/wp-content/uploads/2012/01/image_thumb1.webp" width="419" height="79" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Microsoft KB article &lt;a href="http://support.microsoft.com/kb/942870" target="_blank"&gt;kb942870&lt;/a&gt; hints to an ActiveX component that is registered into HKCU instead of HKLM.&lt;/p&gt; &lt;p&gt;A trace with the ThinApp Log Monitor reveals that the application is looking for an ActiveX component under HKCU: &lt;br /&gt;&lt;/p&gt;</description></item></channel></rss>