Problème ping

Résolu
cs_papi2 Messages postés 44 Date d'inscription vendredi 22 avril 2005 Statut Membre Dernière intervention 6 mars 2009 - 13 mars 2008 à 14:27
cs_papi2 Messages postés 44 Date d'inscription vendredi 22 avril 2005 Statut Membre Dernière intervention 6 mars 2009 - 14 mars 2008 à 00:10
Bonjour,

J'ai cherché partout... certains disent faire un "ping" sur google (par exemple) avec "ShellExecute"... moi, je n'y arrive pas.
La seule façon, c'est de me servir de "system" mais le problème est qu'on voit la fenêtre... et je voudrais la rendre invisible.
J'utilise DEV-C++ 4.9.9.2

Si vous pouviez m'aider ou me renseigner... merci.

J'ai essayé de trois façons :

Marche pas (sauf sur un exécutable par exemple) :

STARTUPINFO         siStartupInfo;
PROCESS_INFORMATION piProcessInfo;
ZeroMemory(&siStartupInfo, sizeof(siStartupInfo));siStartupInfo.cb = sizeof(siStartupInfo);
siStartupInfo.dwFlags = STARTF_USESHOWWINDOW;
siStartupInfo.wShowWindow = SW_HIDE;
if(CreateProcess(NULL, "ping www.google.fr", NULL, NULL, FALSE, 0, NULL, NULL, &siStartupInfo, &piProcessInfo) != ERROR_SUCCESS) 
{
      MessageBox(0,"NON Connecté","     ASTRONOMIE",MB_OK);
}         
     else
     {
        MessageBox(0,"Connecté","     ASTRONOMIE",MB_OK);        
    }
WaitForSingleObject(piProcessInfo.hProcess, INFINITE);




Marche pas :

   if(ShellExecute(FenetrehWnd, "open", "ping www.google.fr", 0, 0,SW_HIDE) != ERROR_SUCCESS) 
    {
        MessageBox(0,"NON connecté","     ASTRONOMIE",MB_OK);
     }
     else
     {
               MessageBox(0,"Connecté","     ASTRONOMIE",MB_OK);
        }

Marche... mais on voit la fenêtre :

  if(system("ping www.google.fr") != ERROR_SUCCESS)    
      
       {
        MessageBox(0,"NON connecté","     ASTRONOMIE",MB_OK);
     }
     else
     {
               MessageBox(0,"Connecté","     ASTRONOMIE",MB_OK);
        }
      
       }

N'oubliez pas... je ne suis pas trop "fut...fut" !
Merci.

Papi2

2 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
13 mars 2008 à 16:32
On va tester google ET microsoft:

int __stdcall bnWebOk()
{
  WSADATA wsa;
  SOCKADDR_IN sin;
  HOSTENT *serv;
  SOCKET s;
  char szaddr[16];
  int vret = 0; // PRESUME ERREUR
  if(WSAStartup(0x0202, &wsa)) goto webEXIT;
  s = socket(AF_INET, SOCK_STREAM, 0);
  if(s == -1) goto wsaCLEAN;
  sin.sin_family = AF_INET;
  sin.sin_port   = htons(80);
  *((DWORD*) szaddr) = 'rcim';
  *((DWORD*) (szaddr + 4)) = 'foso';
  *((DWORD*) (szaddr + 8)) = 'oc.t';
  *((DWORD*) (szaddr + 12)) = 'm';
  serv = gethostbyname(szaddr);
 
  if(!serv) goto Lgoogle;
  sin.sin_addr.S_un.S_addr = (DWORD) *((DWORD*)serv->h_addr_list[0]);
  if(!connect(s, (SOCKADDR*) &sin, sizeof(sin))) goto connOK;
Lgoogle:
  *((DWORD*) szaddr) = 'goog';
  *((DWORD*) (szaddr + 4)) = 'c.el';
  *((DWORD*) (szaddr + 8)) = 'mo';
  serv = gethostbyname(szaddr);
 
  if(!serv) goto sockCLOSE;
  sin.sin_addr.S_un.S_addr = (DWORD) *((DWORD*)serv->h_addr_list[0]);
  if(connect(s, (SOCKADDR*) &sin, sizeof(sin))) goto sockCLOSE;
connOK: vret = 1;
sockCLOSE: closesocket(s);
wsaCLEAN: WSACleanup();
webEXIT: return vret;
}

ciao...
BruNews, MVP VC++
3
cs_papi2 Messages postés 44 Date d'inscription vendredi 22 avril 2005 Statut Membre Dernière intervention 6 mars 2009
14 mars 2008 à 00:10
Bonsoir,

OK... Mr BruNews.

Merci beaucoup... une fois de plus !
Si vous souhaitez observer le ciel... je vous invite... Nous avons un petit club d'astronomie dans le Gers.

Merci encore.

Papi2
0
Rejoignez-nous