编辑:据我所知,此问题仅发生在 Windows 7 和 Vista 上。
我有一个使用外部图形库开发的非常简单的应用程序。如果我将此应用程序安装到程序文件目录中并运行它,它会立即崩溃,但它可以正常工作,具有完全相同的文件。我意识到这是因为您需要以管理员身份运行应用程序才能正常工作。
我很感激这是否是与我正在使用的图形引擎直接相关的问题,但我真的不这么认为(但我一无所知)。有人可以帮助我吗?
编辑更多详细信息:
应用程序可执行文件和运行它所需的文件安装到默认程序目录中 - 对我来说,C:\Program Files (x86)。如果您尝试运行而不单击以管理员身份运行,它会简单地冻结并显示“应用程序已停止工作。Windows 正在检查问题的解决方案...”我的问题基本上是,我怎样才能让它运行不需要管理员吗?
当程序无法执行某项操作时,它(该操作)应该优雅地失败。 我的猜测是您的应用程序正在尝试执行普通用户无法执行的操作,然后无法检查返回代码,然后崩溃。 您需要确定您的程序正在执行的操作是普通用户无法执行的操作。 例如(在我的脑海中):
(没有更多细节)问题很可能与以下事实有关:您的程序尝试写入目录,然后排除文件创建/修改以实际产生效果。 UAC 会阻止应用程序在没有管理员权限的情况下写入 Program Files 目录。解决方案是重新设计您的应用程序,使其不依赖此类行为或将有问题的文件存储在预期位置之一(AppData 等文件夹)。
如果右键单击 EXE 并转到
Properties -> Compatibility
,有一些选项可能会有所帮助。您可以尝试在以前的 Windows 版本的兼容模式下运行该应用程序,或者如果这不起作用,至少将 EXE 标记为默认以管理员身份运行。
此外,如果您有 CCleaner - 转到性能优化器选项卡并唤醒您尝试打开但没有成功的程序。