0

我想在我的应用程序完成后使用 spawnl 恢复 DOS 终端会话,我正在执行以下操作:

    static char* pszMode = "mode.com";
    int intRC = spawnl(P_WAIT, pszMode, pszMode, "co80", NULL);
    char szCOM2setup[80];
    sprintf(szCOM2setup, "%s:9600,n,8,1", clsPort::mpcszCOM2);
    intRC = spawnl(P_WAIT, pszMode, pszMode, szCOM2setup, NULL);

mpcszCOM 包含 COM2

在这两种情况下,intRC 都包含-1,我单步执行,看起来这些命令没有被正确执行,我还没有做什么?

我在嵌入式 PC104 平台上使用 ROM-DOS 版本 6.22。

我检查了 perrror 并使用 strError,实际错误是:

    No such file or directory

但为什么?该路径是在应用程序启动之前设置的,并且 mode.com 可以从与应用程序相同的文件夹中的命令行访问。

尝试使用 spawnlp 而不是 spawnl,没有更好的相同错误。

4

1 回答 1

0

出于某种原因,即使路径设置正确,我也不明白,应用程序返回“没有这样的文件或目录”,所以我修改了应用程序以包含路径,这解决了问题。

于 2017-07-10T14:54:06.603 回答