【问题标题】:FileIOPermission error saving fileFileIOPermission 错误保存文件
【发布时间】:2013-04-19 17:35:56
【问题描述】:

我的问题是这个try 仅在一台计算机上失败(导致捕获),即使使用相同的用户帐户也是如此。它运行良好,并保存了使用该程序的所有其他计算机的屏幕截图。

此外,手动将文件(通过资源管理器)保存到目录中也可以。

try
{
    Bitmap screenShot = new Bitmap(screenWidth, screenHeight);
    Graphics gfx = Graphics.FromImage((Image)screenShot);
    gfx.CopyFromScreen(0, 0, 0, 0, new Size(screenWidth, screenHeight));

    imageSavePath = @"\\navy\data\Docs\PRE\LogSite\Screenshots\" + DateTime.Now.ToString().Replace('/', '-').Replace(':', '-') + ".png";
    screenShot.Save(imageSavePath, ImageFormat.Jpeg);
}
catch (Exception e)
{
    MessageBox.Show("Error saving screenshot\n\n" + e.ToString());
}

这是错误:

编辑:exe 正在从网络驱动器运行

【问题讨论】:

  • 不是显示整个异常消息,而是显示图像路径。会更有用
  • 在消息框中?问题是它在其他计算机上始终如一地工作,那怎么会是个问题呢?
  • 我认为应用程序可能没有写入文件夹的权限,您是否尝试过以管理员身份运行?

标签: c# file-io file-permissions


【解决方案1】:

我已经编辑了我的答案。根据代码,您正在尝试保存到网络共享文件夹,我相信您应该使用模拟来解决权限问题。

请参考以下链接。

Need Impersonation when accessing shared network drive

【讨论】:

  • 怎么样? FileIOPermission 与它的保存方式完全无关
  • 只有这台电脑有问题。运行相同代码的许多其他计算机(使用相同的用户)工作正常。
猜你喜欢
  • 2016-03-28
  • 2016-12-22
  • 2013-08-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-16
  • 2020-02-24
  • 1970-01-01
相关资源
最近更新 更多