<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Universal Runtime &#8211; Xojo Programming Blog</title>
	<atom:link href="https://blog.xojo.com/tag/universal-runtime/feed/" rel="self" type="application/rss+xml" />
	<link>https://blog.xojo.com</link>
	<description>Blog about the Xojo programming language and IDE</description>
	<lastBuildDate>Thu, 07 Jun 2018 15:05:11 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>
	<item>
		<title>Which DLLs can I move and where?</title>
		<link>https://blog.xojo.com/2018/06/03/which-dlls-can-i-move-and-where/</link>
		
		<dc:creator><![CDATA[Norman Palardy]]></dc:creator>
		<pubDate>Sun, 03 Jun 2018 10:00:47 +0000</pubDate>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[DLL]]></category>
		<category><![CDATA[Universal Runtime]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<guid isPermaLink="false">https://blog.xojo.com/?p=4307</guid>

					<description><![CDATA[A helpful run through explaining why you can move some DLLs and you cannot move others.]]></description>
										<content:encoded><![CDATA[<p>After seeing <a href="https://forum.xojo.com/47913-included-windows-runtime-dll-files">this conversation</a> on the forums, I thought it would be helpful to run through why you can move some of your app&#8217;s DLLs but you cannot move others.</p>
<p>On Windows, the Visual Studio C Runtime DLLs can be in one of two locations on systems that do not already have them installed. All versions of Windows prior to Windows 10 would need these installed.</p>
<p><span id="more-4307"></span></p>
<p>Arguably the &#8220;best&#8221; place is to install them in the Windows\System directory so that normal OS updates will keep them up to date. This requires the use of an installer as putting files in the Windows\System directories needs elevated privileges.</p>
<p>The other place they can be is right next to the app executable itself &#8212; but not in a subdirectory like plugins can be.</p>
<p>Why can&#8217;t they be in a subdirectory like plugins? When the OS starts to load and execute your application the OS loads whatever DLLs are required as part of starting the app. These required DLLs must be available where the OS finds them; not where the Xojo framework would because your app isn&#8217;t running yet. And since the app isn&#8217;t running yet the app cannot alter where the OS looks for them.</p>
<p>Normally <a href="https://msdn.microsoft.com/en-us/library/7d83bc18.aspx">Windows looks in these locations:</a></p>
<ol>
<li>The directory where the executable module for the current process is located.</li>
<li>The current directory.</li>
<li>The Windows system directory. The <strong>GetSystemDirectory</strong> function retrieves the path of this directory.</li>
<li>The Windows directory. The <strong>GetWindowsDirectory</strong> function retrieves the path of this directory.</li>
<li>The directories listed in the PATH environment variable.</li>
</ol>
<p>For plugins, the Xojo runtime is specifically loading the DLLs using LoadLibrary and in that case the framework can tell exactly where to look (and where not to look) for the required DLLs which is why they can be in &lt;appname&gt; Libs or just Libs. And this is why the Visual Studio C Runtimes cannot be moved but plugin DLLs can be.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Windows App Requirements</title>
		<link>https://blog.xojo.com/2016/05/19/windows-app-requirements/</link>
		
		<dc:creator><![CDATA[Paul Lefebvre]]></dc:creator>
		<pubDate>Thu, 19 May 2016 00:00:00 +0000</pubDate>
				<category><![CDATA[Windows]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Universal Runtime]]></category>
		<guid isPermaLink="false">http://blogtemp.xojo.com/2016/05/19/windows-app-requirements/</guid>

					<description><![CDATA[Learn about the Windows Universal Runtime requirement for Xojo and apps made with Xojo 2016 Release 1 or later.]]></description>
										<content:encoded><![CDATA[<p>Microsoft refactored their core app runtimes in 2015. They have made what they call a &#8220;Universal C Runtime&#8221; which has been distributed via Windows Update to all supported versions of Windows that stay up-to-date (which is the default behavior for Windows Update).</p>
<p>Starting with Xojo 2016r1, the Xojo Windows framework has been updated to use the latest Microsoft tools. This allows Xojo to stay up to date and allows the Windows support to be improved in future releases. This means that Xojo itself now uses the new Universal Runtime and your built apps now require it.</p>
<p><span id="more-348"></span></p>
<p>Most users will not notice a change. As long as Windows Update has been keeping their systems up-to-date, then they will already have the Windows Runtime installed.</p>
<p>But as we all know, not all users keep things up-to-date. For users that do not have the Windows Runtime installed already, they will need to install it before they can use your apps.</p>
<p>The easiest way to manage this is to have your app installer include the Windows Runtime redistributable installer and run it automatically. If this is not practical, you can also supply the specific DLLs as part of your installer.</p>
<p>For more information on this, refer to the Windows Universal Runtime topic in the Dev Center: <a href="http://developer.xojo.com/windows-universal-runtime">http://developer.xojo.com/windows-universal-runtime</a></p>
<p>To learn how to create an Inno Setup script for your Xojo app that will automatically include the Windows Universal Runtime redistributable (and other things), watch the Windows Installer webinar: <a href="http://developer.xojo.com/webinar-windows-installers">http://developer.xojo.com/webinar-windows-installers</a></p>
<p><!--HubSpot Call-to-Action Code --> <span id="hs-cta-wrapper-02a13a45-54d9-4175-b904-87f831919150" class="hs-cta-wrapper"> <span id="hs-cta-02a13a45-54d9-4175-b904-87f831919150" class="hs-cta-node hs-cta-02a13a45-54d9-4175-b904-87f831919150"><br />
<!-- [if lte IE 8]>


<div id="hs-cta-ie-element"></div>


<![endif]--> <a href="http://blog.xojo.com/2015/11/09/guest-post-part-2-the-power-of-templates/"><img decoding="async" id="hs-cta-img-02a13a45-54d9-4175-b904-87f831919150" class="hs-cta-img aligncenter" style="border-width: 0px; margin: 0 auto; display: block; margin-top: 20px; margin-bottom: 20px;" src="https://blog.xojo.com/wp-content/uploads/2015/11/02a13a45-54d9-4175-b904-87f831919150.png" alt="windows transparent label tip" width="362" height="62" align="middle" /></a></span></span> <!-- end HubSpot Call-to-Action Code --></p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
