title: Why would Cint("1") fail?
body: <p>I'm attempting to deploy a WinForms app in a Citrix environment.  It's been working reliably for some time on other physical and virtual machines, but it's failing, only when running the application on a Citrix desktop.</p>
  
  <p>The failures are typically where we have mixed-type data as strings in a general-purpose settings table in the (SQL Server 2005) database, and then convert them to the appropriate type at run time.</p>
  
  <p>So for example, there's a '1' on the database in a varchar(50) column, it's read in, and then something like</p>
  
  <pre><code>dim myNumericVariable as integer = Cint(dr.Item(columnName))
  </code></pre>
  
  <p>(where dr is the DataRow coming out of ADO.NET).</p>
  
  <p>The message in the thrown exception says:</p>
  
  <pre><code>Conversion from string "1" to type 'integer' is not valid
  </code></pre>
  
  <p>This kind of failure is happening all over the application, but only in the Citrix environment.   In all our other environments it runs fine, but I have no idea whether the fact that it's Citrix is just a fluke and there's some other underlying reason.</p>
  
  <p>It's a VB.NET app, .NET 2.0, with Strict and Explicit both on, compiled for x86.  It works perfectly on XP SP3, also Windows 2003 Server x64.</p>
  
  <p>I'm at my wits end with this - I've looked all over and found no hint as to why I'm seeing this behaviour.  I'd be very grateful for suggestions.  If you need more information about the environments, or the way the app is built, I'll happily edit the question.  Thanks in advance..</p>