我正在做一个简单的图像调整大小,在最后我想保存它:
path = "C:\\new_image.jpg";
img.Save(path, jpegCodec, encoderParams);
问题是它保存到“....... \ Users \ Ervin \ AppData \ Local \ VirtualStore \”。 我做错了什么或者我错过了什么?
更新:我将路径更改为其他文件夹,并且可以正常工作。我似乎无法保存到C:\。
答案 0 :(得分:3)
此版本的用户是您正在运行的用户,因为它没有写入权限直接写入C:驱动器这对Win7或Vista来说是新手我不是那个。
您可以通过以下方式解决此问题:
....... \ Users \ Ervin \ AppData \ Local \ VirtualStore \已添加,以帮助您在更新时修复旧版应用程序。您可能还会注意到虚拟商店中“程序文件”中的大量条目。这些程序试图在程序文件中写入自己的目录而不是像应该的那样写入%LOCALAPPDATA%。
答案 1 :(得分:1)
这是在Vista中引入的,名为Virtualization:
文件虚拟化解决了这个问题 应用程序依赖的情况 关于存储文件的能力,例如 作为配置文件,在系统中 位置通常只能通过 管理员。将程序作为一个 这种情况下的标准用户可能会 导致程序失败 访问级别不足。
当应用程序写入系统时 位置只能写 管理员,Windows然后写道 所有后续文件操作到 Virtual下的用户特定路径 商店目录,位于 %LOCALAPPDATA%\ VirtualStore。后来, 当应用程序读回这个 文件,计算机将提供 一个在虚拟商店。因为 Windows安全基础架构 无需处理虚拟化 应用程序的帮助, 应用程序认为它能够 成功读写 编程文件。透明度 文件虚拟化启用 应用程序,以感知它们 写作和阅读受保护的 资源,实际上它们是 访问虚拟化版本。