Borland C++ ShellExecute eine Wert übergeben

Von: , Frage gestellt am Mi, 24. Jul 2002

Hi,

habe hir ein problem und da ich mit google auch nicht auf eine grünen Zweig gekommen bin bin ich hier.
Und zwar ich habe volgen Quellcode:

if (EIPAdresse->Text == "0.0.0.0")
{
ShowMessage ("Sie haben keine gültige IP - Adresse eingegeben !");
}
else
{
IPAdresse = EIPAdresse->Text.ToDouble();
ShellExecute (Handle, "open", "C:\\WINNT\\system32\\ping.exe" , NULL, NULL, SW_SHOWNORMAL);
}

Jetzt möchte ich die IP -Adresse die in EIPAdresse ( ist ein editfeld) steht beim aufruf von dem prog. ping dies mütübergeben das die ip adresse angeping wird !

geht das ?
muß ich etwas komplet ander machen ?

wäre klasse wenn ih mir helfen würdet !

Pfefferkeks

5 Antworten zu dieser Frage

  1. Antwort von nach 10 Stunden 0 hilfreich
    Re: Borland C++ ShellExecute eine Wert übergeben

    Jetzt möchte ich die IP -Adresse die in EIPAdresse ( ist ein
    editfeld) steht beim aufruf von dem prog. ping dies
    mütübergeben das die ip adresse angeping wird !

    geht das ?
    muß ich etwas komplet ander machen ?
    Nee, nicht komplett anders.

    Du musst nur ping nicht direkt aufrufen sondern ihn erst über einen Hilfsstring mit der IP-Adresse verknüpfen:

    Also etwa so:

    AnsiString tempString = "C:\\WINNT\\system32\\ping.exe " + EIPAdresse.Text;

    ShellExecute (Handle, "open",tempString, NULL, NULL, SW_SHOWNORMAL);

    Kann sein Du musst den AnsiString noch mit .c_str() in einen char* umwandeln.
    Das geht dann aber direkt im Shellexecute-Befehl:

    ShellExecute (Handle, "open",tempString.c_str(), NULL, NULL, SW_SHOWNORMAL);

    So kannst Du natürlich noch alle anderen Optionen des Ping-Befehls nutzen.

    Gruss, Christof

    • Antwort von nach 16 Stunden 0 hilfreich
      Re^2: Borland C++ ShellExecute eine Wert übergeben

      hi,

      habe jetzt folgende befezzeilen:

      AnsiString IpAdresse = "C:\\WINNT\\system32\\ping.exe " + EIPAdresse->Text;

      ShellExecute (Handle, "open",IpAdresse.c_str(), NULL, NULL, SW_SHOWNORMAL);

      jetzt ruft er das prog ping erst garnicht auf !


      wer kann mir helfen ?

      thx
      Pfefferkeks

      • Antwort von nach 18 Stunden 0 hilfreich
        Keine Ahnung, aber versuch es mal hiermit...

        ShellExecute (Handle, "open", "C:\\WINNT\\system32\\ping.exe" , "127.0.0.1", NULL, SW_SHOWNORMAL);
        


        das "127.0.0.1" sollte dann Problemlos durch Deine Variable ersetzt werden können.

        • Antwort von nach 18 Stunden 0 hilfreich
          Ergänzung...

          ShellExecute (Handle, "open", "C:\\WINNT\\system32\\ping.exe" , EIPAdresse->Text, NULL, SW_SHOWNORMAL);
          


          Feedback, obs klappt, wäre schön.

          • Antwort von nach 22 Stunden 0 hilfreich
            Re: Ergänzung...

            Danke mit EIPAdresse->Text.c_str() gets :-))

            thx an alle

            grüße Pfefferkeks [Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Keine passende Antwort gefunden? Jetzt eigene Frage stellen!