如何在打开的管理员程序中调用system(),并赋予它相同的权限? 我在Windows中编写了一个C++应用程序,它作为管理员运行。但是,在调用system()命令时,该命令似乎没有管理员权限(无法在C:\Program Files(x86)\目录中创建文件)

如何在打开的管理员程序中调用system(),并赋予它相同的权限? 我在Windows中编写了一个C++应用程序,它作为管理员运行。但是,在调用system()命令时,该命令似乎没有管理员权限(无法在C:\Program Files(x86)\目录中创建文件),c++,windows,windows-7,C++,Windows,Windows 7,如何避免使用 如果您使用,您可以使用: system("runas /user:<admin-user> \"program.exe\""); 非常详细地介绍了CreateProcess方法。您一定要使用system()?如果它只是创建一个文件,你可以使用文件IO非常好。您实际使用此命令的目的是什么?我使用的是adb pull,它仅用于自用。看到了吗?也许对你有帮助。并且考虑一下:为什么你需要避免使用合适的API调用?我发现很难相信一个提升的进程会启动另一个进程没有被提升。系统的

如何避免使用

如果您使用,您可以使用:

system("runas /user:<admin-user> \"program.exe\"");


非常详细地介绍了
CreateProcess
方法。

您一定要使用
system()
?如果它只是创建一个文件,你可以使用文件IO非常好。您实际使用此命令的目的是什么?我使用的是adb pull,它仅用于自用。看到了吗?也许对你有帮助。并且考虑一下:为什么你需要避免使用合适的API调用?我发现很难相信一个提升的进程会启动另一个进程没有被提升。
系统
的实现将如何实现这一点?
ShellExecute(hwnd, "runas", "program.exe", 0, 0, SW_SHOWNORMAL);