<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Exectuable OS.Version Sometimes Incorrect in LabVIEW</title>
    <link>https://ni.lithium.com/t5/LabVIEW/Exectuable-OS-Version-Sometimes-Incorrect/m-p/3261020#M951237</link>
    <description>&lt;P&gt;Has anybody else had the data returned by OS.Version be unexpected?&amp;nbsp; One feature of my built exe started to fail, and digging in there is a section of code that changes based on operating system, therefore I was relying on a propety node (Application class Operating System:Version Number (OS.Version - short name)).&lt;/P&gt;&lt;P&gt;I did not have a problem before, and I don't have a problem with new applications I build, but with this large VI this has gotten incorrect.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Its suddenly returning 12.4 instead of the expected 6.1&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I searched my entire registry for instances of 12.4 and found none.&amp;nbsp; The data returned by "ver" at a command prompt is as expected "Microsoft Windows [Version 6.1.7601]"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Left- existing executable (LV2012), middle LV2015, right LV2012&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;IMG src="https://ip1.i.lithium.com/7e8236ad36bd47a912c9166c7a00c88494a30529/68747470733a2f2f6e692e6c69746869756d2e636f6d2f74352f696d6167652f736572766572706167652f696d6167652d69642f31373934323969463438343945313246423442423434422f696d6167652d73697a652f6f726967696e616c3f763d6d70626c2d312670783d2d31" border="0" alt="2016-03-01 12_59_38-C__SVN_SD_EC_LabVIEW_BugOrJunk_builds.png" title="2016-03-01 12_59_38-C__SVN_SD_EC_LabVIEW_BugOrJunk_builds.png" /&gt;&lt;/P&gt;</description>
    <pubDate>Tue, 01 Mar 2016 19:14:00 GMT</pubDate>
    <dc:creator>beavercreek</dc:creator>
    <dc:date>2016-03-01T19:14:00Z</dc:date>
    <item>
      <title>Exectuable OS.Version Sometimes Incorrect</title>
      <link>https://ni.lithium.com/t5/LabVIEW/Exectuable-OS-Version-Sometimes-Incorrect/m-p/3261020#M951237</link>
      <description>&lt;P&gt;Has anybody else had the data returned by OS.Version be unexpected?&amp;nbsp; One feature of my built exe started to fail, and digging in there is a section of code that changes based on operating system, therefore I was relying on a propety node (Application class Operating System:Version Number (OS.Version - short name)).&lt;/P&gt;&lt;P&gt;I did not have a problem before, and I don't have a problem with new applications I build, but with this large VI this has gotten incorrect.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Its suddenly returning 12.4 instead of the expected 6.1&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I searched my entire registry for instances of 12.4 and found none.&amp;nbsp; The data returned by "ver" at a command prompt is as expected "Microsoft Windows [Version 6.1.7601]"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Left- existing executable (LV2012), middle LV2015, right LV2012&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;IMG src="https://ip1.i.lithium.com/7e8236ad36bd47a912c9166c7a00c88494a30529/68747470733a2f2f6e692e6c69746869756d2e636f6d2f74352f696d6167652f736572766572706167652f696d6167652d69642f31373934323969463438343945313246423442423434422f696d6167652d73697a652f6f726967696e616c3f763d6d70626c2d312670783d2d31" border="0" alt="2016-03-01 12_59_38-C__SVN_SD_EC_LabVIEW_BugOrJunk_builds.png" title="2016-03-01 12_59_38-C__SVN_SD_EC_LabVIEW_BugOrJunk_builds.png" /&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 01 Mar 2016 19:14:00 GMT</pubDate>
      <guid>https://ni.lithium.com/t5/LabVIEW/Exectuable-OS-Version-Sometimes-Incorrect/m-p/3261020#M951237</guid>
      <dc:creator>beavercreek</dc:creator>
      <dc:date>2016-03-01T19:14:00Z</dc:date>
    </item>
    <item>
      <title>Re: Exectuable OS.Version Sometimes Incorrect</title>
      <link>https://ni.lithium.com/t5/LabVIEW/Exectuable-OS-Version-Sometimes-Incorrect/m-p/3261056#M951247</link>
      <description>&lt;P&gt;Nope never seen that before, this does look like an odd one for sure. &amp;nbsp;My first suggestion is that this function might have an error going into it and that might cause it to return unexpected information. &amp;nbsp;But the output is a string, and if an error is put in, the output is an empty string. &amp;nbsp;Not sure how that could turn into 12.4.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is it possible to post some code? &amp;nbsp;Maybe a minimalist case that reproduces the issue? &amp;nbsp;Is it even reproducible? &amp;nbsp;The work around is probably quite easy, to add code to accept this odd output and treat it like the 6.1 but why it is happening in the first place is an interesting one.&lt;/P&gt;</description>
      <pubDate>Tue, 01 Mar 2016 20:07:16 GMT</pubDate>
      <guid>https://ni.lithium.com/t5/LabVIEW/Exectuable-OS-Version-Sometimes-Incorrect/m-p/3261056#M951247</guid>
      <dc:creator>Hooovahh</dc:creator>
      <dc:date>2016-03-01T20:07:16Z</dc:date>
    </item>
    <item>
      <title>Re: Exectuable OS.Version Sometimes Incorrect</title>
      <link>https://ni.lithium.com/t5/LabVIEW/Exectuable-OS-Version-Sometimes-Incorrect/m-p/3261463#M951375</link>
      <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This morning I tried opening the main VI and doing a Ctrl-Shift-R before the build.&amp;nbsp; No change.&lt;/P&gt;&lt;P&gt;Then I decided to output all the OS Parameters.&amp;nbsp; They were ALL different from those reported in the development environment.&lt;/P&gt;&lt;P&gt;&lt;IMG src="https://ip1.i.lithium.com/72c4d7417c30fdcdd86b6b3b9af8734847f227be/68747470733a2f2f6e692e6c69746869756d2e636f6d2f74352f696d6167652f736572766572706167652f696d6167652d69642f31373934383469434545463231313331414238343035332f696d6167652d73697a652f6f726967696e616c3f763d6d70626c2d312670783d2d31" border="0" alt="2016-03-02 08_53_40-Command Line Args.png" title="2016-03-02 08_53_40-Command Line Args.png" /&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;we had the thought to recompile the application in 2015 and see how that goes.&amp;nbsp; Same result.&lt;/P&gt;&lt;P&gt;&lt;IMG src="https://ip1.i.lithium.com/e5023be02f487e151db6f5cbe71bbb3f6c6a1d06/68747470733a2f2f6e692e6c69746869756d2e636f6d2f74352f696d6167652f736572766572706167652f696d6167652d69642f31373934383569454642414537453234414546343938422f696d6167652d73697a652f6f726967696e616c3f763d6d70626c2d312670783d2d31" border="0" alt="2016-03-02 08_58_32-Command Line Args.png" title="2016-03-02 08_58_32-Command Line Args.png" /&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I then took the two simple executables (LV2012 and LV2015) that I built yesterday, moved them to the standard install folder of the app, they still worked perfectly.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Then I renamed one of them to the name of my executable and that was the ticket.&amp;nbsp; If the simple apps have the same name as my troubled application, they report the strange data as above.&lt;/STRONG&gt;&amp;nbsp; I moved them to a different machine and tried the same trick, no dice. so somehow, my laptop has been told to give this particular exe strange information.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I think my next move will be to uninstall and reinstall the application and hope that clears out the cobwebs.&lt;/P&gt;</description>
      <pubDate>Wed, 02 Mar 2016 15:30:08 GMT</pubDate>
      <guid>https://ni.lithium.com/t5/LabVIEW/Exectuable-OS-Version-Sometimes-Incorrect/m-p/3261463#M951375</guid>
      <dc:creator>beavercreek</dc:creator>
      <dc:date>2016-03-02T15:30:08Z</dc:date>
    </item>
    <item>
      <title>Re: Exectuable OS.Version Sometimes Incorrect</title>
      <link>https://ni.lithium.com/t5/LabVIEW/Exectuable-OS-Version-Sometimes-Incorrect/m-p/3261479#M951386</link>
      <description>&lt;P&gt;Would you care to tell us the name of your application that seems to make this problem? Windows maintains an internal compatibility database where various OS functions such as the OS Version number retrieval will actually outrightly lie to an application based on known incompatibilities of different appliciations. For that Windows uses pointers like the executable name and other characteristics of an executable to determine if it should start to lie about things.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Adding a prefix or postfix to your executable name would most likely be the easiest fix to this.&lt;/P&gt;</description>
      <pubDate>Wed, 02 Mar 2016 15:48:56 GMT</pubDate>
      <guid>https://ni.lithium.com/t5/LabVIEW/Exectuable-OS-Version-Sometimes-Incorrect/m-p/3261479#M951386</guid>
      <dc:creator>rolfk</dc:creator>
      <dc:date>2016-03-02T15:48:56Z</dc:date>
    </item>
    <item>
      <title>Re: Exectuable OS.Version Sometimes Incorrect</title>
      <link>https://ni.lithium.com/t5/LabVIEW/Exectuable-OS-Version-Sometimes-Incorrect/m-p/3261512#M951398</link>
      <description>&lt;P&gt;&lt;FONT face="verdana,geneva" size="3"&gt;Yes, no problem, I've been sheepish about the name because its a little Orwellian ... TimeTracker.exe (tracks time toward projects, similar to Toggl, but with connections to our&amp;nbsp;requirements and defect tracking tools, cost centers, etc.)&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="verdana,geneva" size="3"&gt;I'm now convinced I've brought this trouble on myself (of course :P)&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="verdana,geneva" size="3"&gt;A little history, my company has recently switched from well formed administrator UserID's to obfuscated non-administrator UserID's (don't get me started on how ineffective and&amp;nbsp;inefficient obfuscated UserID's are).&amp;nbsp; So for new employees to the company, the application has several issues.&amp;nbsp; I started trying to find a list of Windows protected folders (where??), fixed an issue where it was reading a registry key*, and had not gotten to fixing the need to create and write registry keys...yet. &amp;nbsp; I got frustrated trying to find a checklist for creating normal-user apps and in trying to find all incompatibilities I started Microsoft's Application Verifier and wound up aborting that.&amp;nbsp; I'd be willing guess that was the start of my problems.&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT face="verdana,geneva" size="3"&gt;Has anyone seen/created a checklist or tool to interrogate a VI for normal (non-admin) user problems?&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;*&lt;FONT face="verdana,geneva" size="3"&gt; for those with trouble reading a registry key on an non-admin account, Open Registry Key.vi -- had to change the Security Access Mask from KEY_READ|KEY _WRITE(the default) to KEY_QUERY_VALUE.&lt;/FONT&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 02 Mar 2016 16:25:25 GMT</pubDate>
      <guid>https://ni.lithium.com/t5/LabVIEW/Exectuable-OS-Version-Sometimes-Incorrect/m-p/3261512#M951398</guid>
      <dc:creator>beavercreek</dc:creator>
      <dc:date>2016-03-02T16:25:25Z</dc:date>
    </item>
    <item>
      <title>Re: Exectuable OS.Version Sometimes Incorrect</title>
      <link>https://ni.lithium.com/t5/LabVIEW/Exectuable-OS-Version-Sometimes-Incorrect/m-p/3261600#M951431</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://ni.lithium.com/t5/user/viewprofilepage/user-id/6528"&gt;@rolfk&lt;/a&gt; wrote:&lt;BR /&gt;&lt;P&gt;Would you care to tell us the name of your application that seems to make this problem? Windows maintains an internal compatibility database where various OS functions such as the OS Version number retrieval will actually outrightly lie to an application based on known incompatibilities of different appliciations. For that Windows uses pointers like the executable name and other characteristics of an executable to determine if it should start to lie about things.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Adding a prefix or postfix to your executable name would most likely be the easiest fix to this.&lt;/P&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;Can you add a citation to that? &amp;nbsp;I could learn something today&lt;img id="smileylol" class="emoticon emoticon-smileylol" src="https://ni.lithium.com/i/smilies/16x16_smiley-lol.gif" alt="Smiley LOL" title="Smiley LOL" /&gt;&lt;/P&gt;&lt;LI-SPOILER&gt;I always do learn something every day but, this seams "Interesting."&lt;/LI-SPOILER&gt;</description>
      <pubDate>Wed, 02 Mar 2016 19:05:00 GMT</pubDate>
      <guid>https://ni.lithium.com/t5/LabVIEW/Exectuable-OS-Version-Sometimes-Incorrect/m-p/3261600#M951431</guid>
      <dc:creator>JÞB</dc:creator>
      <dc:date>2016-03-02T19:05:00Z</dc:date>
    </item>
    <item>
      <title>Re: Exectuable OS.Version Sometimes Incorrect</title>
      <link>https://ni.lithium.com/t5/LabVIEW/Exectuable-OS-Version-Sometimes-Incorrect/m-p/3261875#M951519</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://ni.lithium.com/t5/user/viewprofilepage/user-id/123634"&gt;@JÞB&lt;/a&gt; wrote:&lt;BR /&gt;&lt;P&gt;Can you add a citation to that?&lt;/P&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;The key term is "application compatibility". You can start here - &lt;A href="https://msdn.microsoft.com/en-us/library/bb432182%28v=vs.85%29.aspx" target="_blank"&gt;https://msdn.microsoft.com/en-us/library/bb432182%28v=vs.85%29.aspx&lt;/A&gt;&lt;/P&gt;&lt;P&gt;Specifically:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;File attributes are metadata associated with a file on disk. &lt;BR /&gt;These attributes include the file name, file size, checksum, version, and date. &lt;BR /&gt;These attributes are used to determine whether a file being loaded by the system &lt;BR /&gt;matches a database entry&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The basic idea is that Microsoft really wanted users to have a completely smooth upgrade experience and so they put together a team dedicated to finding issues with various programs and either getting the publisher to fix it or setting up various options so that the program will run even though it did something wrong. If you want, there's a Microsoft developer called Raymond Chen who has a blog which occasionally includes stories about specific issues. I'm sure there are other stories around too.&lt;/P&gt;</description>
      <pubDate>Thu, 03 Mar 2016 08:47:27 GMT</pubDate>
      <guid>https://ni.lithium.com/t5/LabVIEW/Exectuable-OS-Version-Sometimes-Incorrect/m-p/3261875#M951519</guid>
      <dc:creator>tst</dc:creator>
      <dc:date>2016-03-03T08:47:27Z</dc:date>
    </item>
    <item>
      <title>Re: Exectuable OS.Version Sometimes Incorrect</title>
      <link>https://ni.lithium.com/t5/LabVIEW/Exectuable-OS-Version-Sometimes-Incorrect/m-p/3267217#M953584</link>
      <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have finally succeeded in stopping Windows from lying to my executable!&amp;nbsp; Specifically, I opened Application Verifier (which got me into the trouble), selected my executable in the list and turned off the&amp;nbsp;Compatibility -&amp;gt; HighVersionLie.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In the mean time I had read more than I care to about sdbinst (and shimming), where sdb's are&amp;nbsp;typically installed, etc. and struck out all over the place.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The other information I've gathered is that the "Standard User Analyzer" is the specific tool that I should run on my application.&amp;nbsp; After installing the&amp;nbsp;Assessment and Deployment Kits I found the "SUA" here C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Application Compatibility Toolkit\Standard User Analyzer. (it was not in the start menu)&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Now my main problem is that I cannot figure out how to run the Standard User Analyzer as a standard user!&amp;nbsp; Well, I do have a workaround, a coworker logs in my machine, neuters me, and then I can start testing, but this is not the ideal method as I invariable find the need to switch myself back into admin rather quickly.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I tried creating a new standard user account on my machine, but something in my company's group policy doens't allow that user to log in.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I also (several times) have run into tips about set __COMPAT_LAYER=RUNASINVOKER.&amp;nbsp; This will prevent auto escalation for exe's that are detected to be installers and will&amp;nbsp;override any included manifest, but since I'm an admin, it doesn't really help me either.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'll keep updating this thread.&lt;/P&gt;</description>
      <pubDate>Mon, 14 Mar 2016 21:34:23 GMT</pubDate>
      <guid>https://ni.lithium.com/t5/LabVIEW/Exectuable-OS-Version-Sometimes-Incorrect/m-p/3267217#M953584</guid>
      <dc:creator>beavercreek</dc:creator>
      <dc:date>2016-03-14T21:34:23Z</dc:date>
    </item>
    <item>
      <title>Re: Exectuable OS.Version Sometimes Incorrect</title>
      <link>https://ni.lithium.com/t5/LabVIEW/Exectuable-OS-Version-Sometimes-Incorrect/m-p/3267465#M953654</link>
      <description>&lt;P&gt;If you run from the development environment you get the LV version instead. It might not be applicable in this case, but program.version acts that way.&lt;/P&gt;&lt;P&gt;/Y&lt;/P&gt;</description>
      <pubDate>Tue, 15 Mar 2016 11:27:24 GMT</pubDate>
      <guid>https://ni.lithium.com/t5/LabVIEW/Exectuable-OS-Version-Sometimes-Incorrect/m-p/3267465#M953654</guid>
      <dc:creator>Yamaeda</dc:creator>
      <dc:date>2016-03-15T11:27:24Z</dc:date>
    </item>
  </channel>
</rss>

