Windows Mobile 6.5 - CreateProcess运行exe的方式与直接执行不同



我正在尝试启动当用户按下按钮时用移动设备的相机拍照的capture.exe。从文件资源管理器运行capture.exe时,它会按预期工作,将capture.logdefault.jpg保留在运行它的文件夹中。但是,通过我的应用程序启动 exe 时,exe 不会创建default.jpg,并且capture.log包含:

pPropertyBag->Load( &PropBag, NULL) failed, hr = 80070037

我用来启动 exe 的代码是:

CreateProcess(L"\MyPath\capture.exe", NULL, NULL, NULL, FALSE, NULL, NULL, NULL, NULL, NULL)

我还尝试将路径作为第一个命令行参数以及空字符串传递,但由于某种原因,capture.exe以编程方式调用时无法正常运行。

我怀疑资源管理器使用的是CreateProcess,它可能使用的是ShellExecuteEx,它有时会给出不同的行为。 这绝对值得一试,因为这是我能想到的唯一区别。

最新更新