在.NET中,我认为我可以通过调用System.IO.File.GetAttributes()并检查ReparsePoint位来确定文件是否是符号链接.像这样:
var a = System.IO.File.GetAttributes(fileName);
if ((a & FileAttributes.ReparsePoint) != 0)
{
// it's a symlink
}
Run Code Online (Sandbox Code Playgroud)
在这种情况下,如何获得符号链接的目标?
ps:我知道如何创建符号链接.它需要P/Invoke:
[Interop.DllImport("kernel32.dll", EntryPoint="CreateSymbolicLinkW", CharSet=Interop.CharSet.Unicode)]
public static extern int CreateSymbolicLink(string lpSymlinkFileName, string lpTargetFileName, int dwFlags);
Run Code Online (Sandbox Code Playgroud)