用MFC的CFileFind类判断有没有你想要的文件,没有(有)就执行(你说的不清楚)
ShellExecute(NULL, _T("open"), _T("盘符:XX\\2.exe"), NULL, NULL, SW_SHOW);

解决方案 »

  1.   

    CFileFind finder;
    CString  strWildcard=m_strDir;//m_strDir文件地址
    strWildcard   += _T( "\\*.exe");
    BOOL bWorking = finder.FindFile(strWildcard);
    while (bWorking)
    {
    bWorking = finder.FindNextFile();
                    CString   ftr   =   finder.GetFileName();
                  if(ftr==1){..................}
                  if(ftr==2){.................}
                  .
                  .
              }
      

  2.   

    判断ShellExecute的返回值非0就代表有错误。
    看msdn吧。
      

  3.   

    如果 文件多 ftr是递增的你就做循环,把ftr转换下类型