Форум программистов, компьютерный форум CyberForum.ru

CMD & Ping_Pong - C++

Восстановить пароль Регистрация
 
ggmann
 Аватар для ggmann
20 / 20 / 1
Регистрация: 06.10.2008
Сообщений: 173
13.01.2010, 13:12     CMD & Ping_Pong #1
Доброго времени суток

пишу небольшую програмулину для выключения компьютеров по сети, использую команды СМД, но столкнулса с небольшой проблемой:

если програма пытается выключить удаленный комп который выключен или просто не имеет сети то получается очень долгая задержка для перехода к следующей .

в связи с этим я сначала пингую эти машины.

вопрос: как мне получить ответ от машины, пропинговалась она или нет?
мне чтото говорили о Pong но каким образом его достать?)
вот код моей не доделанной программы, прошу не смеяться =)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include <cstdlib>
#include <cstdio>
#include <iostream>
#include <string>
#include <sstream>
 
using namespace std;
 
char M_num[33];
 
int main() {        
    
for(int n = 1; n<=11; n++){ 
       
       itoa(n,M_num,10);  //получаю номер машины который добавляю в конец строки команды
           
       string  Ping ("ping -w 50 -n 1 10.6.82.");
                    
                        Ping.append(M_num);
            const char *Ping_ = Ping.c_str();
            system(Ping_);
    
 
    /*if()
    string Shut ("shutdown -s -f -m \\\\10.6.82."); //command
            Shut.append(M_num);
            const char *Shut_ = Shut.c_str();   
            system(Shut_);
            //cout<<shut_;
         */
}
    
    
system("PAUSE");
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.01.2010, 13:12     CMD & Ping_Pong
Посмотрите здесь:

Проблема с проверкой условия цикла for( int i=2; !((n%i||d%i)&&!(n%i&&d%i))==0 ; i++) C++
В заштрихованную фигуру бросают точки с координатами x и y. Получить координаты первой точки не попавшей в эту область (фигура x*x+y*y<25&&x*x+y*y>=9& C++
C++ Почему friend ostrem& operator <<(ostream& outs, const Rational&); - invalid function declaration?
В программе объявлена переменная int x=1; определить значение выражения х>0 && x<1 ? 10/x : 10*x C++
ostream &operator<< (ostream &output, const Array &obj) - что означает эта строка? C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
odip
Эксперт C++
 Аватар для odip
7225 / 3287 / 58
Регистрация: 17.06.2009
Сообщений: 14,165
13.01.2010, 22:00     CMD & Ping_Pong #2
По умолчанию в Windows firewall блокирует ping.
У тебя везде отключен firewall ?

Запиши вывод команды ping в файл.
Потом прочитай этот файл и пропарси его чтобы понять - есть ответ или нет.
ggmann
 Аватар для ggmann
20 / 20 / 1
Регистрация: 06.10.2008
Сообщений: 173
14.01.2010, 11:40  [ТС]     CMD & Ping_Pong #3
фаервол то отключен через раз, та и настраивался так чтобы не блочить лишнего но это не важно.

за идею с файлом спс, попробую. правда думал есть какойто проще метод ну да ладно, будем довольствоваться тем что есть.

Добавлено через 2 часа 38 минут
возникла проблема из записью у файл ответа

дело в том что CMD не хочет записывать кириллицу у файл а записывает "кракозяблы" , и это проблема именно смд, просто вбивши это в строку команды оно записало те же "крякозяблы"

есть идеи как заставить записать нормально ответ?

заранее боагодарен.
odip
Эксперт C++
 Аватар для odip
7225 / 3287 / 58
Регистрация: 17.06.2009
Сообщений: 14,165
14.01.2010, 12:43     CMD & Ping_Pong #4
у тебя русский Windows ?
это не кракозябры - а видимо текст в кодировке CP866
Yandex
Объявления
14.01.2010, 12:43     CMD & Ping_Pong
Ответ Создать тему
Опции темы

Текущее время: 13:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru