<?xml version="1.0"?>
<ArrayOfFBEvent xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <FBEvent>
    <User>Dan McFadden</User>
    <Comment />
    <StatusString>Edited</StatusString>
    <TimeStamp>2024-01-02T16:17:46Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Jaime Lopez</User>
    <Comment>Verified with DataPRO v4.0.1059; 4.1.468; 4.2.182
 
Installed DataPRO with French locale got no error popup</Comment>
    <StatusString>Closed</StatusString>
    <TimeStamp>2023-10-17T22:31:53Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>Closed</Status>
  </FBEvent>
  <FBEvent>
    <User>Jaime Lopez</User>
    <Comment />
    <StatusString>Assigned</StatusString>
    <TimeStamp>2023-10-02T21:07:24Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Dan McFadden</User>
    <Comment />
    <StatusString>Edited</StatusString>
    <TimeStamp>2023-09-12T17:35:06Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Dan McFadden</User>
    <Comment />
    <StatusString>ReleaseNoted</StatusString>
    <TimeStamp>2023-09-12T17:35:00Z</TimeStamp>
    <ReleaseNote>Eliminates a SQL Server LocalDB is not installed message that could show up on some language installs</ReleaseNote>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Jerry Lawrence</User>
    <Comment>49552 is 4.0; 49553 is 4.1; 49550 is 4.2.

The double.TryParse() is indeed the culprit.  The fix is to change it to the overload that takes a format provider, and specifying InvariantCulture.

To test:
Using a laptop that has a French locale, install DataPRO and ensure that "SQL Server LocalDb is not installed" is not displayed multiple (4) times, requiring OK to be clicked each time.</Comment>
    <StatusString>Resolved</StatusString>
    <TimeStamp>2023-09-07T23:00:23Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>Resolved</Status>
  </FBEvent>
  <FBEvent>
    <User>Jerry Lawrence</User>
    <Comment />
    <StatusString>Assigned</StatusString>
    <TimeStamp>2023-09-06T23:41:26Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Dan McFadden</User>
    <Comment />
    <StatusString>Edited</StatusString>
    <TimeStamp>2023-08-30T14:45:24Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Dan McFadden</User>
    <Comment />
    <StatusString>Assigned</StatusString>
    <TimeStamp>2023-08-29T20:57:14Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Dan McFadden</User>
    <Comment />
    <StatusString>Edited</StatusString>
    <TimeStamp>2023-08-29T20:33:57Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Dan McFadden</User>
    <Comment>this string is output whenever the local db path is empty;
 
            //SQL Server Express LocalDB 2014 is a Prerequisite of the DataPRO Installer,
             //so it should be there unless it has been subsequently uninstalled.
             var localDbPath = GetSqlServerLocalDBPath();
             if (localDbPath == string.Empty)
             {
                 log.WriteEntry($"localDbPath is empty");
                 //SQL Server LocalDb is not installed so display error and go away
                 return Settings.Default.SqlServerLocalDbNotInstalled;
             }
 
said function is getting the path from the registry;
 
        private string GetSqlServerLocalDBPath()
         {
             var highestVersionInstalledPath = string.Empty;
 
            var rk = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64);
             var sk1 = rk.OpenSubKey(Settings.Default.RegistrySoftwareMicrosoftMicrosoftSQLServerLocalDBInstalledVersions);
 
 
 
it is using a double parse that isn't i18n'd which could be an issue, but necessarily for french;
 
 
 
                if (!double.TryParse(productSubKeyName, out thisVersion)) continue;
 
it's also looking for this string in the registry, which might also not be good;
 
"SOFTWARE\\\\Microsoft\\\\Microsoft SQL Server Local DB\\\\Installed Versions"
 
SQL Server Management studio can apparently be installed in multiple languages;
 
https://learn.microsoft.com/en-us/sql/ssms/install-other-languages?view=sql-server-ver16</Comment>
    <StatusString>Edited</StatusString>
    <TimeStamp>2023-08-17T21:16:13Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Dan McFadden</User>
    <Comment />
    <StatusString>Edited</StatusString>
    <TimeStamp>2023-08-15T23:18:51Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Dan McFadden</User>
    <Comment />
    <StatusString>Edited</StatusString>
    <TimeStamp>2023-08-15T20:06:34Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Jerry Lawrence</User>
    <Comment />
    <StatusString>Assigned</StatusString>
    <TimeStamp>2023-08-10T18:39:38Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>UNKNOWN</Status>
  </FBEvent>
  <FBEvent>
    <User>Jerry Lawrence</User>
    <Comment />
    <StatusString>Opened</StatusString>
    <TimeStamp>2023-08-10T18:39:37Z</TimeStamp>
    <ZendeskNumber>0</ZendeskNumber>
    <Status>Opened</Status>
  </FBEvent>
</ArrayOfFBEvent>