2

当我在 C:\ProgramFiles 中安装我的 C# winform 应用程序时遇到问题,每次尝试运行它时,我都会通过 3 个选项(关闭、调试、检查在线解决方案)收到通常的“应用程序已停止工作”错误。

现在我很确定我在 InstDir 中得到了所有的 Dll 和要求。我确定这个因为如果我将 InstDir 复制/粘贴到另一个位置,例如桌面,该应用程序可以工作!

怎么解决这个???

错误看起来像这样

Problem signature:
Problem Event Name:   CLR20r3
Problem Signature 01: typingfreak.exe
Problem Signature 02: 1.0.0.0
Problem Signature 03: 5029e51b
Problem Signature 04: mscorlib
Problem Signature 05: 4.0.0.0
Problem Signature 06: 4ba1da6f
Problem Signature 07: 3dab
Problem Signature 08: 13c
Problem Signature 09: System.UnauthorizedAccess
OS Version:   6.1.7600.2.0.0.256.1
Locale ID:    12297
Additional Information 1: 0a9e
Additional Information 2: 0a9e372d3b4ad19135b953a78882e789
Additional Information 3: 0a9e
Additional Information 4: 0a9e372d3b4ad19135b953a78882e789

请,任何帮助

4

3 回答 3

4

您的申请正在提高System.UnauthorizedAccess。鉴于您复制并粘贴到另一个文件夹时发生的情况的描述,我的猜测是它正在尝试将数据写入本地文件夹。

如果您要安装到Program Files中,则不允许这样做(除非您以管理员身份运行它),因为您的用户无法写入。

于 2012-08-16T16:41:31.073 回答
3

尝试以管理员身份运行它 - 如果它有效 - 您的应用程序可能正在访问系统中不允许用户访问的某些区域 - (通常是目录)。检查您的文件访问方法

于 2012-08-16T16:44:49.287 回答
2

根据您的错误行:

Problem Signature 09: System.UnauthorizedAccess

我推测您正在从一个目录运行,您没有应用程序所需的适当权限,或者您从网络位置(或网络)复制了应用程序并且没有将其标记为安全。

验证目录的 Windows 权限后,我建议您右键单击可执行文件,选择属性,然后在对话框中查找标有“取消阻止”的按钮。点击它。您可能需要也可能不需要重复 DLL。

于 2012-08-16T16:41:43.483 回答