如何从隐藏文件夹WinAPI运行程序

时间:2014-09-01 17:41:51

标签: c++ winapi visual-c++

我尝试使用以下代码运行程序:

    PROCESS_INFORMATION ProcInfo = { 0 };

    STARTUPINFO StartInfo = { 0 };
    StartInfo.cb = sizeof(StartInfo);

    if (!::CreateProcessW(NULL, (LPWSTR)wszPathToFile, NULL, NULL, FALSE, DETACHED_PROCESS, NULL, NULL, &StartInfo, &ProcInfo)) {
        return GetLastError();
    }

但是我收到错误消息:系统找不到指定的路径。 wszPathToFile - 文件路径(例如:" C:\ test \ test.exe / retest")。文件夹"测试"是隐藏的 如何解决?

1 个答案:

答案 0 :(得分:1)

隐藏文件夹无关紧要。这没有影响。

正如评论中所讨论的那样,您正在转换lpCommandLine参数的事实表明szPathToFile不是正确的类型。它必须是指向可修改的宽字符数组的指针。如果是,那么您可以省略强制转换,编译器将直接接受szPathToFile

最有可能szPathToFile实际上是指向ANSI编码的8位char数组的指针。

相关问题