public List<string> RecentFiles(int max)
{
RegistryKey k = Registry.CurrentUser.OpenSubKey(RegistryKey);
if (k == null) k = Registry.CurrentUser.CreateSubKey(RegistryKey);
List<string> list = new List<string>(max);
for (int i = 0; i < max; i++)
{
string filename = (string)k.GetValue(Key(i));
if (String.IsNullOrEmpty(filename)) break;
list.Add(filename);
}
return list;
}