资源描述:
《c 通过设置注册表实现文件关联》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、C#通过设置注册表实现文件关联publicboolRenameSubKey(RegistryKeyparentKey,stringsubKeyName,stringnewSubKeyName)
CopyKey(parentKey,subKeyName,newSubKeyName);
parentKey.DeleteSubKeyTree(subKeyName);
returntrue;
publicboolCopyKey(RegistryKeyparentKey,stringkeyNameToCopy,stringnewKe
2、yName)
//Createnewkey
RegistryKeydestinationKey=parentKey.CreateSubKey(newKeyName,RegistryKeyPermissionCheck.ReadWriteSubTree);
//OpenthesourceKeywearecopyingfrom
RegistryKeysourceKey=parentKey.OpenSubKey(keyNameToCopy,RegistryKeyPermissionCheck.ReadWriteSubTree,
3、RegistryRights.FullControl);
RecurseCopyKey(sourceKey,destinationKey);
returntrue;
privatevoidRecurseCopyKey(RegistryKeysourceKey,RegistryKeydestinationKey)
//copyallthevalues
foreach(stringvalueNameinsourceKey.GetValueNames())
objectobjValue=sourceKey.GetValue(va
4、lueName);
RegistryValueKindvalKind=sourceKey.GetValueKind(valueName);
destinationKey.SetValue(valueName,objValue,valKind);
//ForEachsubKey
//CreateanewsubKeyindestinationKey
//Callmyself
foreach(stringsourceSubKeyNameinsourceKey.GetSubKeyNames())
RegistryKeysource
5、SubKey=sourceKey.OpenSubKey(sourceSubKeyName,
RegistryKeyPermissionCheck.ReadWriteSubTree,RegistryRights.FullControl);
RegistryKeydestSubKey=destinationKey.CreateSubKey(sourceSubKeyName,
RegistryKeyPermissionCheck.ReadWriteSubTree);
RecurseCopyKey(sourceSubKey,des
6、tSubKey);
///summary
///Referencetoan.icofileusedbyAF_FileAssociator.
////summary
publicclassProgramIcon
publicProgramIcon(stringiconPath)
IconPath=iconPath.Trim();
publicreadonlystringIconPath;
publicboolIsValid
FileInfogetInfo=newFileInfo(IconPath);
if(getInfo.E
7、xistsgetInfo.Extension==.ico)
returntrue;
else
returnfalse;
///summary
///ReferencetoanlistofexecutablefilesusedbyAF_FileAssociator.
////summary
publicclassOpenWithList
publicOpenWithList(string[]openWithPaths)
ListstringtoReturn=newListstring
FileInfogetInfo;
for
8、each(stringfileinopenWithPaths)
getInfo=newFileInfo(file);
toReturn.Add(getInfo.Name);
List=toReturn.ToArray();
publicreadonlystring[]List;
///summary
/