我正在使用LogonUser的ASP.NET模拟(advapi32.dll) . 代码简称:

LogonUser( username, domain, password, 9, 0, out handle );
WindowsIdentity.Impersonate( handle.DangerousGetHandle() );

当我输入我的用户凭据时,我在访问 local 文件时收到UnauthorizedAccessException(访问路径'C:\Folder\test.txt'被拒绝 . ):

using( FileStream fileStream = new FileStream( "C:\Folder\test.txt", FileMode.Append, FileAccess.Write, FileShare.ReadWrite ) )

我对此文件拥有完全权限 .

它在访问网络共享(UNC)上的文件时有效:

using( FileStream fileStream = new FileStream( "\\Server\Folder\test.txt", FileMode.Append, FileAccess.Write, FileShare.ReadWrite ) )

有没有这种行为的经验?谢谢 .