//взят рабочий код
C
CString str;
str = _T("192.168.0.81");
str = _T("cmd /k ping ") + str;
char STROUT[256];
for (int i=0;i<256;STROUT[i]=0,i++);
BOOL UDC=true;
WideCharToMultiByte(0,0,COLE2T(str.AllocSysString()),lstrlenW(COLE2T(str.AllocSysString())),STROUT,sizeof(STROUT),"",&UDC);
WinExec((LPCSTR)STROUT,SW_SHOW);
//переписан так
QString str;
//работает
str = "http://www.ya.ru";
ShellExecuteA(0, "open", str.toAscii(), NULL, NULL, SW_SHOWNORMAL);
//не работает
str = "cmd /k ping 192.168.0.81";
WinExec(str.toAscii(),SW_SHOW);
пишет что
'ping' is not recognized as an internal or external command,
operable program or batch file.