private static string GetStdioBridgePath() { var installedPath = Utility.PathCombine(PathManager.GetUCEFolder(), "StdioBridge.exe"); var versionFilePath = PathManager.GetStdioBridgeVersionFilePath(); bool needUpdated = false; if (File.Exists(versionFilePath)) { var cachedVersion = File.ReadAllText(versionFilePath).Trim(); int cachedVersionNumber; if (int.TryParse(cachedVersion, out cachedVersionNumber)) { if (cachedVersionNumber < Constants.STDIO_BRIDGE_VERSION) { needUpdated = true; } } else { needUpdated = true; } } else { needUpdated = true; } var srcPath = Path.Combine(UCE_FOLDER_IN_PROJECT, "Data/sb.db"); if (!File.Exists(installedPath)) { Utility.Unpack(srcPath, installedPath); if (needUpdated) { File.WriteAllText(versionFilePath, Constants.STDIO_BRIDGE_VERSION.ToString()); } return(installedPath); } if (needUpdated) { Utility.Unpack(srcPath, installedPath); File.WriteAllText(versionFilePath, Constants.STDIO_BRIDGE_VERSION.ToString()); } return(installedPath); }