} else if (val is int){
value.AddAttribute ("type", "int");
value.Text = val.ToString ();
} else if (val is int){
value.AddAttribute ("type", "int");
value.Text = val.ToString ();
value.Text = Convert.ToBase64String ((byte[]) val);
} else if (val is ExpandString){
value.AddAttribute ("type", "expand");
value.Text = Convert.ToBase64String ((byte[]) val);
} else if (val is ExpandString){
value.AddAttribute ("type", "expand");
} else if (val is string []){
value.AddAttribute ("type", "string-array");
foreach (string ss in (string[]) val){
SecurityElement str = new SecurityElement ("string");
} else if (val is string []){
value.AddAttribute ("type", "string-array");
foreach (string ss in (string[]) val){
SecurityElement str = new SecurityElement ("string");
RegistryKey result = self.Probe (rkey, ToUnix (keyname), writable);
if (result == null && IsWellKnownKey (rkey.Name, keyname)) {
// create the subkey even if its parent was opened read-only
RegistryKey result = self.Probe (rkey, ToUnix (keyname), writable);
if (result == null && IsWellKnownKey (rkey.Name, keyname)) {
// create the subkey even if its parent was opened read-only
Directory.Delete (dir, true);
KeyHandler.Drop (dir);
} else if (throw_if_missing)
Directory.Delete (dir, true);
KeyHandler.Drop (dir);
} else if (throw_if_missing)