ExtractToFile引发拒绝访问错误

本文关键字:错误 拒绝访问 ExtractToFile | 更新日期: 2023-09-27 17:58:36

首先,我清楚我使用的是带有DefaultAppPool(集成4.0)的ASP.NET 4.5。我还配置了对DefaultAppPool用户的匿名访问。我已授予对DefaultAppPool的所有访问权限。System.Security.Principal.WindowsIdentity.GetCurrent()方法给了我相同的用户。但当下面的行运行时,它会给我Access to the path 'XXXX' is denied.异常。然后出于测试目的,我已经将所有权限授予了EveryOne用户,但仍然会收到相同的错误。这是代码行。注意桁架

        using (ZipArchive archive = new ZipArchive(zipStream))
        {
            foreach (ZipArchiveEntry file in archive.Entries)
            {
                file.ExtractToFile(location,true);
            }
        }

这是StackTrace,

[UnauthorizedAccessException: Access to the path 'XXX' is denied.]
   System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) +10793558
   System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost) +1352
   System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share) +65
   System.IO.Compression.ZipFileExtensions.ExtractToFile(ZipArchiveEntry source, String destinationFileName, Boolean overwrite) +96
   XX.XX.XX.ExtractZipFile(Stream zipStream, String location) in XX.cs:44
   XX.XX.XX.XX.XX.XX.ExtractZipFile(Stream zipStream, String location) in XXX.cs:17

ExtractToFile引发拒绝访问错误

.NET框架在这种情况下给了我错误的异常。问题是,我只是在传递位置(没有文件名的文件夹位置)。因此,在包含完整路径之后,这就起作用了。