学校项目的Exe需要管理员才能正常运行

时间:2015-12-04 23:14:00

标签: c++

该项目的一个要求是它必须能够启动w / out admin。这是一个庞大的项目,因此我无法向您展示其来源和有意义且有用的方式

我去了一些人寻求帮助,他们建议我在整个项目中查看我写文件的任何时候。但是,我无法想到其他任何我仍然这样做,但exe只会在管理模式下运行。如果您尝试在非管理员模式下运行它,它会崩溃。

我知道如果你看不到项目就很难调试,但项目是数百个文件。主要是,我正在寻找有关导致程序在非管理模式下崩溃但在管理模式下运行完美的事情的建议

2 个答案:

答案 0 :(得分:1)

正如许多人建议的那样,问题是打开一个具有读/写权限的文件。即使我们只是从文件中读取,我们也将文件作为fstream而不是ifstream打开。

我错过了它,因为问题隐藏在一些字符串utils函数中,这些函数由另一个不再在团队中的团队成员编写。几乎没有人使用这些字符串函数或者知道它们存在。

感谢你们的建议,无论如何!

答案 1 :(得分:0)

首先,我不认为你可以在没有管理员权限的情况下运行和安装vcredist_x86.exe。

除此之外,一般来说,不要求UAC,我认为您需要正确设置PrivilegesRequired

编辑:要解决安装vcredist的需要,可以使用静态运行时链接。但是,这也存在一些缺点(例如,内存分配/释放必须始终在相同的内存环境中完成,即相同的dll /可执行文件 - 无论如何总是最好的策略。)