가끔씩 StorageFiles가 잠기고 덮어 쓰려고 할 때 UnauthorizedAccessException이 발생합니다. 나는 이것을 복제 할 수 없다. 단지 무작위로 일어난다. 파일을 생성하는 코드입니다.파일을 대체하면 WinRT/Win8에서 UnauthorizedAccessException이 발생합니다.
using (var stream = new MemoryStream())
{
// ...populate stream with serialized data...
StorageFile file;
Stream fileStream;
try
{
file = await folder.CreateFileAsync(fileName, CreationCollisionOption.ReplaceExisting);
}
catch (UnauthorizedAccessException ex)
{
Debug.WriteLine("Access denied on file {0}", fileName);
return;
}
fileStream = await file.OpenStreamForWriteAsync();
using (fileStream)
{
stream.Seek(0, SeekOrigin.Begin);
await stream.CopyToAsync(fileStream);
await fileStream.FlushAsync();
}
}
파일이 UnauthorizedAccessException을 던지기 시작하면 항상 throw됩니다. 시스템에 파일이 잠겨져있는 것처럼 나는 그것을 만질 수 없습니다. 응용 프로그램을 제거하고 다시 작성해야합니다.
내 문서에서 파일을 열면 해당 데이터가 표시됩니다. 모든 것이 좋습니다. 그것은 성공적으로 기록되었습니다.
누구든지 내 코드에 문제가있을 수 있습니까?
Windows 8.1에서 내 응용 프로그램과 동일한 효과가 나타납니다. 파일 바꾸기가 임의로 실패합니다. –
같은 상황이 여기에 있습니다. 하나는 데이터를 통해 선별하는 동안 모든 장치에 영향을 미치지 않는다는 것을 발견했다고 생각합니다. 내 사용자 층 전체에서이 오류는 3-5 %의 기기에서만 발생합니다. –