0

我写了这个简单的控制台程序(writeTxt.exe):

#include "stdafx.h"

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
    char        *fileName = "test.txt";
    ofstream    outStream(fileName, ios::out);

    outStream << "This is a very simple test." << endl;

    return 0;
}

然后我使用命令在 Windows Server 2008 的控制台上运行它runas(我以不同的用户身份登录User1):

runas /user:User1 writeTxt.exe

但程序不产生文件test.txt。如果我以身份登录服务器User1并运行该程序,则它可以正常工作。我是否必须为此设置一些东西才能正常运行?

4

1 回答 1

1

我相信runas总是在启动程序时将其工作目录设置为C:\Windows\System32(或道德等价物),而不是在您调用runas.

如果User1有权写入该目录,则该文件将位于该目录。如果他们没有这样的权限,那么程序就会失败。

于 2013-09-25T08:12:00.963 回答