使用createprocess vs2010使用/ y运行批处理文件

时间:2013-06-08 06:57:10

标签: visual-studio-2010 createprocess

我的批处理文件要求输入y / n。我使用CreateProcess()方法运行该批处理文件。如果我使用/ y作为commnad行运行我的批处理文件,它不会要求输入。 e.g

run.bat /y

我想使用命令行/ y使用CreateProcess()运行我的批处理文件,如上所述,例如,我不知道如何使用CreateProcess()执行此操作,我不想修改我的批处理文件。 / p>

::CreateProcess(L"run.bat",NULL,NULL,NULL,TRUE,CREATE_NEW_CONSOLE,NULL,NULL,&startInfo,&procInfo ) ,我也试试这个

::CreateProcess(L"run.bat",L"/y",NULL,NULL,TRUE,CREATE_NEW_CONSOLE,NULL,NULL,&startInfo,&procInfo )

但是,它不起作用。如果有人知道怎么做,请告诉我。

:: CreateProcess(L“run.bat”,L“/ y”,NULL,NULL,TRUE,CREATE_NEW_CONSOLE,NULL,NULL,& startInfo,& procInfo)这很好用。这是我的错误,我改变了如果部分和我的流程进入其他部分。我总是改变我的if部分。谢谢你的快速回复。

1 个答案:

答案 0 :(得分:0)

试试这个

::CreateProcess(L"cmd.exe", L"/c run.bat /y", NULL, NULL, TRUE, CREATE_NEW_CONSOLE,
     NULL, NULL, &startInfo, &procInfo )

正如says on MSDN

  

要运行批处理文件,必须启动命令解释程序;将 lpApplicationName 设置为cmd.exe并将 lpCommandLine 设置为以下参数:/ c加上批处理文件的名称。