/// <summary> /// Write the current version, the language and the application name to /// registry. This enables Omaha to update the specified application. /// </summary> public static void WriteUpdateKey(Guid applicationId, Version version, string applicationName = null) { ArgumentValidator.ThrowIfNullOrEmpty(applicationId, "applicationId"); ArgumentValidator.ThrowIfNull(version, "verions"); List <Tuple <string, object, RegistryValueKind> > registryValues = new List <Tuple <string, object, RegistryValueKind> > { new Tuple <string, object, RegistryValueKind>("pv", version.ToString(), RegistryValueKind.String), new Tuple <string, object, RegistryValueKind>("lang", "en", RegistryValueKind.String) }; if (applicationName != null) { registryValues.Add(new Tuple <string, object, RegistryValueKind>( "name", applicationName, RegistryValueKind.String)); } RegistryWriter registryWriter = new RegistryWriter(OmahaClients); // The appID is in format {00000000-0000-0000-0000-000000000000}. registryWriter.AddValueEntries(applicationId.ToString("B").ToUpper(), registryValues); registryWriter = new RegistryWriter(OmahaClientState); // Set to disabled by default to prevent race condition. registryWriter.SetStringValue(applicationId.ToString("B").ToUpper(), "ap", "disabled"); }
/// <summary> /// Write a value entry to HKLM\SOFTWARE\Google\Update\ClientState to /// report Omaha usage information. The name of the entry is "dr" and /// the value is set to "1". /// </summary> public static void WriteUpdateStatsKey(Guid applicationId) { ArgumentValidator.ThrowIfNullOrEmpty(applicationId, "applicationId"); List <Tuple <string, object, RegistryValueKind> > registryValues = new List <Tuple <string, object, RegistryValueKind> > { new Tuple <string, object, RegistryValueKind>("dr", "1", RegistryValueKind.String) }; RegistryWriter registryWriter = new RegistryWriter(OmahaClientState); // The appID is in format {00000000-0000-0000-0000-000000000000}. registryWriter.AddValueEntries(applicationId.ToString("B").ToUpper(), registryValues); }
/// <summary> /// Write a value entry to HKLM\SOFTWARE\Google\Update\ClientState to /// report Omaha usage information. The name of the entry is "dr" and /// the value is set to "1". /// </summary> public static void WriteUpdateStatsKey(Guid applicationId) { ArgumentValidator.ThrowIfNullOrEmpty(applicationId, "applicationId"); List<Tuple<string, object, RegistryValueKind>> registryValues = new List<Tuple<string, object, RegistryValueKind>> { new Tuple<string, object, RegistryValueKind>("dr", "1", RegistryValueKind.String) }; RegistryWriter registryWriter = new RegistryWriter(OmahaClientState); // The appID is in format {00000000-0000-0000-0000-000000000000}. registryWriter.AddValueEntries(applicationId.ToString("B").ToUpper(), registryValues); }
/// <summary> /// Write the current version, the language and the application name to /// registry. This enables Omaha to update the specified application. /// </summary> public static void WriteUpdateKey(Guid applicationId, Version version, string applicationName = null) { ArgumentValidator.ThrowIfNullOrEmpty(applicationId, "applicationId"); ArgumentValidator.ThrowIfNull(version, "verions"); List<Tuple<string, object, RegistryValueKind>> registryValues = new List<Tuple<string, object, RegistryValueKind>> { new Tuple<string, object, RegistryValueKind>("pv", version.ToString(), RegistryValueKind.String), new Tuple<string, object, RegistryValueKind>("lang", "en", RegistryValueKind.String) }; if (applicationName != null) { registryValues.Add(new Tuple<string, object, RegistryValueKind>( "name", applicationName, RegistryValueKind.String)); } RegistryWriter registryWriter = new RegistryWriter(OmahaClients); // The appID is in format {00000000-0000-0000-0000-000000000000}. registryWriter.AddValueEntries(applicationId.ToString("B").ToUpper(), registryValues); registryWriter = new RegistryWriter(OmahaClientState); // Set to disabled by default to prevent race condition. registryWriter.SetStringValue(applicationId.ToString("B").ToUpper(), "ap", "disabled"); }