ShellExecute失败:ERROR_FILE_NOT_FOUND

时间:2013-11-23 19:19:21

标签: c++ qt winapi shellexecute admin-rights

我正在尝试使用我自己的具有管理员权限的启动器启动我的应用程序。启动器适用于我的 64Bit Win7 ,但不适用于我的 32Bit WinXP 计算机。 我正在使用的代码是:

wstring fullAppPath = "myapp.exe";
ShellExecuteW(NULL,
             L"runas",                       //admin rights
             fullAppPath.c_str(),
             NULL,                           //startup params
             NULL,                           //default dir
             SW_SHOWNORMAL
             );

我将MSVC 2010 32Bit编译器与Qt IDE和启动器应用程序一起使用,主应用程序位于同一目录中,而不是 C:\ Windows \ System32 。 在我的WinXP计算机上,每次启动我的启动器时都会出现ERROR_FILE_NOT_FOUND错误。 (值 2 ) 我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

解决方案是使用绝对路径而不是相对路径。