using System;
using System.Text.RegularExpressions;
public class MainClass {
public static void Main() {
string v = "Once Upon A Time In America";
Regex o = new Regex(@"[s]+");
foreach (string ss in o.Split(v)) {
Console.WriteLine(ss);
}
}
}
Month: February 2011
Single space split
using System;
using System.Text.RegularExpressions;
public class MainClass {
public static void Main() {
string u = "Once Upon A Time In America";
Regex p = new Regex(" ");
foreach (string ss in p.Split(u)) {
if (ss.Length > 0)
Console.WriteLine(ss);
}
}
}
Multiple different delimiters
using System;
using System.Text.RegularExpressions;
public class MainClass {
public static void Main() {
string t = "Once,Upon:A/TimeIn'America";
Regex q = new Regex(@" |,|:|/||'");
foreach (string ss in q.Split(t)) {
Console.WriteLine(ss);
}
}
}
Open a SubKey in Registry
using System;
using Microsoft.Win32;
class MainClass {
public static void SearchSubKeys(RegistryKey root, String searchKey) {
foreach (string keyname in root.GetSubKeyNames()) {
try {
using (RegistryKey key = root.OpenSubKey(keyname)) {
if (keyname == searchKey) PrintKeyValues(key);
SearchSubKeys(key, searchKey);
}
} catch (System.Security.SecurityException) {
}
}
}
public static void PrintKeyValues(RegistryKey key) {
Console.WriteLine("Registry key found : {0} contains {1} values",
key.Name, key.ValueCount);
foreach (string valuename in key.GetValueNames()) {
if (key.GetValue(valuename) is String) {
Console.WriteLine(" Value : {0} = {1}",
valuename, key.GetValue(valuename));
}
}
}
public static void Main(String[] args) {
if (args.Length > 0) {
using (RegistryKey root = Registry.CurrentUser) {
SearchSubKeys(root, args[0]);
}
}
}
}
Get the Registry key found for CurrentUser
using System;
using Microsoft.Win32;
class MainClass {
public static void SearchSubKeys(RegistryKey root, String searchKey) {
foreach (string keyname in root.GetSubKeyNames()) {
try {
using (RegistryKey key = root.OpenSubKey(keyname)) {
if (keyname == searchKey) PrintKeyValues(key);
SearchSubKeys(key, searchKey);
}
} catch (System.Security.SecurityException) {
}
}
}
public static void PrintKeyValues(RegistryKey key) {
Console.WriteLine("Registry key found : {0} contains {1} values",
key.Name, key.ValueCount);
foreach (string valuename in key.GetValueNames()) {
if (key.GetValue(valuename) is String) {
Console.WriteLine(" Value : {0} = {1}",
valuename, key.GetValue(valuename));
}
}
}
public static void Main(String[] args) {
if (args.Length > 0) {
using (RegistryKey root = Registry.CurrentUser) {
SearchSubKeys(root, args[0]);
}
}
}
}
Use GetValue and SetValue to get and save value to Registry
using System;
using Microsoft.Win32;
class MainClass {
public static void Main(String[] args) {
string lastUser;
string lastRun;
int runCount;
lastUser = (string)Registry.GetValue(@"HKEY_CURRENT_USERSoftwareAC#","", "Nobody");
if (lastUser == null) {
lastUser = "Nobody";
lastRun = "Never";
runCount = 0;
} else {
lastRun = (string)Registry.GetValue(@"HKEY_CURRENT_USERSoftwareAC#","LastRun", "Never"); runCount = (Int32)Registry.GetValue(
@"HKEY_CURRENT_USERSoftwareAC#","RunCount", 0);
}
Console.WriteLine("Last user name: " + lastUser);
Console.WriteLine("Last run date/time: " + lastRun);
Console.WriteLine("Previous executions: " + runCount);
Registry.SetValue(@"HKEY_CURRENT_USERSoftwareAC#","", Environment.UserName, RegistryValueKind.String);
Registry.SetValue(@"HKEY_CURRENT_USERSoftwareAC#","LastRun", DateTime.Now.ToString(), RegistryValueKind.String);
Registry.SetValue(@"HKEY_CURRENT_USERSoftwareAC#","RunCount", ++runCount, RegistryValueKind.DWord);
}
}
Enumerating Registry Keys
using System;
using Microsoft.Win32;
class Class1 {
static void Main(string[] args) {
RegistryKey myRegKey = Registry.LocalMachine;
myRegKey = myRegKey.OpenSubKey("SOFTWAREMicrosoftWindowsCurrentVersionUninstall");
String[] subkeyNames = myRegKey.GetSubKeyNames();
foreach (String s in subkeyNames) {
RegistryKey UninstallKey = Registry.LocalMachine;
UninstallKey = UninstallKey.OpenSubKey("SOFTWAREMicrosoftWindowsCurrentVersionUninstall" + s);
try {
Object oValue = UninstallKey.GetValue("DisplayName");
Console.WriteLine(oValue.ToString());
} catch (NullReferenceException) {
}
}
}
}

