2010-05-14 58 views
0

我在,我在运行时创建一个文件夹并保存文件夹中的某些XML文件的Windows appliciation工作.... 每一件事工作正常的Windows XP,但是当我在寡妇运行此7/Vista中我得到的错误说对路径的访问被拒绝.. 我正在用C创建文件夹:\ PROGRAMFILES \ MyApplication的\访问错误7

请帮我解决这个

+0

如果以下解决方案没有帮助,请尝试此处给出的步骤 - http://stackoverflow.com/a/21995207/2789764 – 2014-02-24 18:55:17

回答

2

的Windows 7(和Vista)设置的Program Files文件目录的访问权限,也不允许普通用户写的目录。

无论你的程序必须由管理员来运行,也可以在其他地方改变您的应用程序文件项的权限,或保存数据。

+0

我部署了一个VSTO Excel加载项,因此我如何在管理员中运行该程序或者如何更改我的Apps程序文件的权限entrys – SSK 2010-05-14 09:32:38

+0

如何部署加载项,您是否使用Windows安装程序文件? – stuartd 2010-05-14 10:28:28

+0

在dotnet .msi文件中创建的安装文件 – SSK 2010-05-14 11:18:27

0
  • 是您的应用程序在管理员的上下文中运行?

  • 是视觉工作室以管理员身份运行?

为此右击VS并选择以管理员身份运行,永久地做到这一点,右键单击,propertys并选择以管理员身份运行复选框。

当你通过VS调试你的应用程序,它需要的权限,否则应用程序自身的意愿。

它可能只是一个基于权限的事情...

+0

我在Windows XP中使用VS并在Win 7中部署exe文件 – SSK 2010-05-14 09:31:21

0

您可以为可执行文件启用XP模式。

+0

我该怎么做这对于VSTO Excel插件 – SSK 2010-05-14 09:33:02

+0

我刚刚在Windows 7中添加了一个选项,不仅以管理员身份在XP模式下运行。我会建议不要在'C:\ Programfiles \ MyApplication \'中创建一个文件夹,而是在'%APPDATA%\ MyApplication \' – 2010-05-14 09:48:25

+0

如果我使用APPDATA,它会在Win 7和Win XP中创建文件夹? – SSK 2010-05-14 10:27:43

2

的设置它可能是一个想法,使用特殊文件夹.NET提供了这种类型的数据。这应该工作:

Directory.CreateDirectory(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + @"\AppName\test folder"); 

然后将您的数据写入此文件夹。

+0

但我想将它写入安装路径,即C:\ Programfiles \ myApp \ myFolder – SSK 2010-05-14 11:19:18

+0

是否有特定的原因,为什么它必须是这个位置? – Andy 2010-05-14 12:07:24

0

您不应该写入程序文件。这是一个坏习惯,只有安装人员应该写在那里。你“想要”对整个生态系统不利,而且显然是错误的。不要这样做。