我想执行MS-DOS,并在命令窗口CMD运行后,自动执行chkdsk C:
//shellexecute(handle,nil,'cmd ',nil,nil,sw_normal);
shellexecute(handle,'open','cmd','chkdsk C:',nil,sw_normal);

解决方案 »

  1.   

    shellexecute(handle,'open','chkdsk',nil,'c:\',sw_normal);
      

  2.   

    感谢楼上兄弟,可你那倒数第二个参数是磁盘目录,不是CHKDSK的参数啊
    HINSTANCE ShellExecute(HWND hwnd, LPCTSTR lpoperation, LPCTSTR lpFile, 
    LPTSTR lpParameters,LPCTSTR lplnrectory,INTnshowCmd ) ; 
    它的参数是:
    IPDirectory它是一个空终端字符串,用来说明要打开或者打印的文件目录。
      

  3.   

    ShellExecute (Handle,nil,'cmd.exe ','/K chkdsk C:',nil,SW_NORMAL); //
      

  4.   

    ShellExecute (Handle,nil,'cmd.exe ','/c chkdsk C:',nil,SW_NORMAL);
      

  5.   

    楼上的高呀,如果再加一个参数/F,不会是命令
    ShellExecute (Handle,nil,'cmd.exe ','/K chkdsk C: /F',nil,SW_NORMAL); //吧,就是搞不懂是/K带参数的
      

  6.   

    经测试总结:ShellExecute (Handle,nil,'cmd.exe ','/K chkdsk C:',nil,SW_NORMAL); //
    才是我要的答案,其它的都不准确