<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' version='2.0'><channel><atom:id>tag:blogger.com,1999:blog-3063041321490551014</atom:id><lastBuildDate>Mon, 16 Jun 2008 09:48:35 +0000</lastBuildDate><title>igence and software</title><description/><link>http://igence.com/blogs/software/</link><managingEditor>noreply@blogger.com (admin)</managingEditor><generator>Blogger</generator><openSearch:totalResults>2</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3063041321490551014.post-6677261025979143215</guid><pubDate>Mon, 16 Jun 2008 09:32:00 +0000</pubDate><atom:updated>2008-06-16T10:48:35.162+01:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>ShellExecute</category><category domain='http://www.blogger.com/atom/ns#'>context sensitive help</category><category domain='http://www.blogger.com/atom/ns#'>Windows</category><category domain='http://www.blogger.com/atom/ns#'>HTML</category><title>Fun with ShellExecute</title><description>To provide context sensitive help for an application, it is quite useful to have HTML pages available which can be opened by the application when the user presses a key. To make things simple, it's also nice to have named anchors within the HTML so that the application doesn't need a separate page for each help item.&lt;br /&gt;&lt;br /&gt;The obvious way to do this is to put the HTML files in a folder somewhere and use the Windows &lt;a href="http://msdn.microsoft.com/en-us/library/bb762153(VS.85).aspx"&gt;ShellExecute&lt;/a&gt; command to open the browser with the specified URL. If the pages can be fetched from a HTTP server, then there is no problem using named anchors, but if your pages are just files in a folder, you need to use the &lt;em&gt;file:&lt;/em&gt; protocol. However, the &lt;em&gt;file:&lt;/em&gt; protocol requires absolute paths, which means you need to know where your folder is. On top of that, you can't use named anchors either.&lt;br /&gt;&lt;br /&gt;The solution I found is to get the application to create a temporary HTML file,  on the fly,  containing a meta refresh tag, which redirects to the URL (with the named anchor) you need. eg.&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&amp;lt;meta HTTP-EQUIV="REFRESH" content="0; url=Help\Pages\Index.htm#subsection"&amp;gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;You then use &lt;em&gt;ShellExecute&lt;/em&gt; to open the temporary file instead. If the temporary file has the extension &lt;em&gt;.htm&lt;/em&gt; you don't need to specify the protocol because it uses the extension to determine that the file should be opened in the browser.&lt;br /&gt;&lt;br /&gt;This means you can use a relative path &lt;strong&gt;and&lt;/strong&gt; a named anchor.</description><link>http://igence.com/blogs/software/2008/06/fun-with-shellexecute.html</link><author>noreply@blogger.com (Nige)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-3063041321490551014.post-7342656003318774347</guid><pubDate>Tue, 15 Apr 2008 15:14:00 +0000</pubDate><atom:updated>2008-04-15T16:18:34.904+01:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>VisualStudio</category><title>Visual Studio Output Window</title><description>Ever have problems with your output window in Visual Studio? Sometimes I find that mine won't automatically scroll when building - I have to keep dragging the scrollbar to get the most recent output into view.&lt;br /&gt;&lt;br /&gt;It's not immediately obvious, but It turns out that the cursor needs to be at the end of the output for it to keep the most recent output in the window. A quick Ctrl-End will get the cursor to the end of the output.</description><link>http://igence.com/blogs/software/2008/04/visual-studio-output-window.html</link><author>noreply@blogger.com (Steve)</author></item></channel></rss>