Из Бейсика на C++
Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.
Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.
Есть программа, написанная на Microsoft Quick Basic v.4.50, которая пингует сайт и при не получении ответа от сайта в течении 120 секунд производит перезагрузку.
есть 2 причины моей просьбы:
при запуске данной программы запускается также непонятный процесс под названием «ntvdm.exe», который вешает комп на 98% быстродействия (QB 4.5 не способен компилировать под современные ОС);

вот снимок экрана:
EXE-файл нижеприведённой программы не способен запуститься через команду Start и запускать его можно только из BAT-файла простым вызовом типа: «c:\cc.exe» — тут не получиться задать минимальный приоритет работы программы;
коммент к строке 4:
это Batch-команда (т.е. команда, вызываемая из BAT-файла, которая сохраняет значение пинга в файл qqqq без расширения):
а так — вроде как обычный Бейсик.....
огромная просьба:
перепишите мне пожалуйста данный код программы на язык C и скомпилируйте EXE-файл
есть вариант использования Batch-команд:
но и этот вариант у меня «не прошёл»
— претензий к коду Batch у меня нет
просто в процессе продолжительной работе вылазит сообщение об ошибке, касающееся Ping.exe
— я точно не знаю в чем причина этого сообщения, но одно могу сказать точно:
пока я не нажму «Ок» в данном окне сообщения, — то Batch-программа работать не будет
(т.е. в любом случае нужно убрать окно сообщения об ошибке, — в противном случае код Batch-файла приостанавливает свою работу)
RDLNEO, пожалуйста оформляйте свои сообщения в соответствии с правилами разметки, принятыми на этом сайте.
Moderator
Если переписывать совсем втупую, то примерно так:
Но это — говнокод. При вызове ping'а сначала запускается процесс
cmd.exe, который вызываетping.exeиfind. Да еще потом веселая передача информации через файл. Говнокод, одним словом.Если же делать нормально, то почитай IcmpSendEcho function. Тогда можно будет обойтись и без лишних обращений к системе, и без передачи информации через внешний файл.