因为要用到这方面的东东,所以小结了一下,如下:
/// <summary>
/// 创建文件的快捷方式(虚拟路径)
/// </summary>
/// <param name='Path'>目标位置</param>
/// <param name='TargetPath'>目标</param>
private void CreateShortCut(string Path,string TargetPath)
{
if(System.IO.File.Exists(@TargetPath))
{
Path += @'.lnk';
IWshRuntimeLibrary.WshShell shell = new IWshRuntimeLibrary.WshShellClass();
IWshRuntimeLibrary.IWshShortcut shortcut = (IWshRuntimeLibrary.IWshShortcut)shell.CreateShortcut(@Path);
shortcut.TargetPath = @TargetPath;
shortcut.Save();
}
}
/// <summary>
/// 把虚拟的快捷方式路径转化为物理路径
/// </summary>
/// <param name='Path'>虚拟路径</param>
/// <returns>物理路径 如果为空字符窜则该虚拟路径不存在或者输入的不是虚拟路径</returns>
private string ConvertToPhysicalPath(string Path)
{
string targetPath='';
Path += @'.lnk';
if(System.IO.File.Exists(@Path))
{
IWshRuntimeLibrary.WshShell shell = new IWshRuntimeLibrary.WshShellClass();
IWshRuntimeLibrary.IWshShortcut shortcut = (IWshRuntimeLibrary.IWshShortcut)shell.CreateShortcut(@Path);
targetPath = shortcut.TargetPath;
}
return targetPath;
}