我有這樣的代碼:不能使用C#的圖像寫入一個文件,由於未經授權的訪問異常
RenderTargetBitmap renderTargetBitmap = new RenderTargetBitmap(525, 50, 96, 96, PixelFormats.Pbgra32);
renderTargetBitmap.Render(/* controlName */);
PngBitmapEncoder pngImage = new PngBitmapEncoder();
pngImage.Frames.Add(BitmapFrame.Create(renderTargetBitmap));
using (Stream fileStream = File.Create(Environment.CurrentDirectory)
{
pngImage.Save(fileStream);
}
它應該從我的XAML控制,創造它的「截圖」,然後將其保存到圖像文件。但無論我嘗試傳遞給File.Create
方法的目錄是什麼,我都會得到一個System.UnauthorizedAccessException
。
如何解決?謝謝。
注:我試圖以管理員身份運行Visual Studio,但沒有工作。
您的應用程序沒有訪問目錄的權限。確保您寫入到您的應用程序所運行的帳戶具有寫入權限的位置。 –
什麼是錯誤的完整堆棧跟蹤?你有沒有嘗試過使用'File.WriteAllBytes();'方法?嘗試將其保存到您登錄的用戶的桌面上。 – Wjdavis5
@ WicherVisser-我嘗試了幾個位置,包括'C:\'驅動器,桌面以及應用程序本身的目錄。 – Sipo