【发布时间】:2017-01-25 17:46:29
【问题描述】:
我正在尝试从异步任务创建一个新的 jpeg 文件。相关代码sn-p如下所示
private async void OnSocketConnectionReceived(StreamSocketListener sender, StreamSocketListenerConnectionReceivedEventArgs args)
{
await ReceiveFile(args);
}
private async Task ReceiveFile(StreamSocketListenerConnectionReceivedEventArgs args)
{
string pathString = @"C:\Users\sarav\test.jpg";
FileStream writeStream = new FileStream(pathString, FileMode.CreateNew, FileAccess.Write, FileShare.None, bufferSize: 4096, useAsync: true);
}
它在 FileStream 中抛出上面的 System.UnauthorizedAccessException。相同路径的相同 Filestream sn-p 正在基于控制台的 C# 应用程序上工作,从某种意义上说,文件 test.jpg 正在创建。关于我在这里缺少的任何建议。
【问题讨论】:
-
检查你的文件“test.jpg”是否已经存在于磁盘上。
-
await Task.Run(() => ReceiveFile(args)); -
也试过了,同样的异常被抛出
-
您的代码在我的机器上运行良好。尝试查看stackoverflow.com/questions/7706467/… 或stackoverflow.com/questions/17304191/…
-
即使对我来说作为一个独立的应用程序也可以正常工作。由于上下文来自回调,这在这里有什么不同吗?
标签: c#