Coin.FormMain.RegisterUriHandler C# (CSharp) Method

RegisterUriHandler() private method

private RegisterUriHandler ( ) : void
return void
        void RegisterUriHandler()
        {
            try {
                if ((int)UserAppRegistryKey.GetValue("UrlRegAsked", 0) == 0) {
                    UserAppRegistryKey.SetValue("UrlRegAsked", 1);
                    RegistryKey keyClasses = Registry.CurrentUser.OpenSubKey("Software").OpenSubKey("Classes", true);
                    string toMe = string.Format("\"{0}\" %1", Assembly.GetCallingAssembly().Location);
                    var subKey = keyClasses.OpenSubKey("bitcoin");
                    if (subKey == null) {
                        keyClasses.CreateSubKey("bitcoin").CreateSubKey("shell").CreateSubKey("open").CreateSubKey("command").SetValue(null, toMe);
                    }  else {
                        var keyCommand = subKey.OpenSubKey("shell").OpenSubKey("open").OpenSubKey("command");
                        string path = (string)keyCommand.GetValue(null, "");
                        if (path != toMe) {
                            if (MessageBox.Show("Register Bitcoin URI for this Application", "Coin", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
                                keyCommand.SetValue(null, toMe);
                        }
                    }
                }
            } catch (Exception) {
            }
        }