2012-01-08 74 views
4

为Visual C++ 2010 Express中作为普通用户这是代码:COUT不能在Windows 7

#include <iostream> 

int main() 
{ 
    using namespace std; 
    cout << "========================" << "\n" << flush; 
    return 0; 
} 

如果我建,在Windows 7中使用Visual快讯2010年,上面的代码作为一个管理员,然后以cmd shell的普通用户身份运行生成的可执行文件,它将打印预期的输出。 如果我像普通用户一样清理并构建相同的代码,然后以普通用户身份在cmd shell中运行生成的可执行文件,则不会打印任何内容。

任何想法为什么会发生这种情况?

+0

看起来你问了[一个非常类似的问题](http://stackoverflow.com/questions/7939541/visual-c-2010-express-for-win32-project-linking-only-works-as-管理员)。 – 2012-01-08 23:25:28

+0

是的,但我一直无法深究这个问题。 – 2012-01-08 23:27:13

+0

没有更多的细节,我不认为任何人都可以帮助你。 – 2012-01-08 23:32:19

回答

0

我没有确切的答案,但我会尽力提供帮助。

1)作为普通用户,右键单击Visual Studio命令提示符,然后单击以管理员身份运行。这样,您可以以普通用户的身份运行Visual Studio,并且只能以管理员身份使用命令提示符。

2)您的调试文件夹位置不是默认值。我使用Visual C++ 2010 Express作为普通用户并使用默认位置/ user/visual studio 2010/projects。我可以毫无问题地运行程序。通过右键单击来检查您是否具有该文件的可执行权限。

另外,为什么不使用“Ctrl + F5”从IDE运行程序?如果你只是想运行程序,这种方式会更快。 还有一件事,尝试从Visual Studio外部打开cmd shell,cd进入该文件夹并运行它,看看是否有所作为。

0

我认为这是一个问题,由于分配不当的权利。 尝试给予普通用户管理权限。 此外,检查文件是否在您的文档中,而不是在C:\ program files 由于权限充足,您可能无法修改设置。 因此,在规定的目录中不会进行调试。

+0

这里的要点是标准用户能够使用Visual C++编译并生成可运行的可执行文件。我不希望用户拥有管理权限。 当你说检查你的'文件',你引用了什么文件? – 2012-02-09 20:23:11