Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.01.27;
Скачать: [xml.tar.bz2];

Вниз

пинг   Найти похожие ветки 

 
Rustam   (2007-12-11 23:22) [0]

подскажите плиз,как можно вызывать в делфи внешние команды?
именно нужен ping.
то бишь,чтобы делфи делал типа ping 192.168.0.1 и показывал,успешно или нет.


 
DVM ©   (2007-12-11 23:28) [1]


> как можно вызывать в делфи внешние команды?

WinExec()


> и показывал,успешно или нет.

Показывал где?


 
Rustam   (2007-12-11 23:59) [2]

ну если пинг прошел успешно,то выводить сообщение в противном случае, выводить другое сообщение
з.ы какие аргументы у winexec?


 
DVM ©   (2007-12-12 00:05) [3]


> ну если пинг прошел успешно,то выводить сообщение в противном
> случае, выводить другое сообщение

Тут не подойдет внешняя программа ping. Удобнее будет воспользоваться функциями icmp.dll.


> какие аргументы у winexec?

procedure TForm1.Button2Click(Sender: TObject);
begin
 winexec(pchar("ping.exe www.ya.ru"), sw_show)
end;


 
Rustam   (2007-12-12 00:21) [4]

а как пользоваться icmp?


 
Джо ©   (2007-12-12 02:23) [5]

> [4] Rustam   (12.12.07 00:21)
> а как пользоваться icmp?

http://delphi.about.com/library/weekly/code/src081503.zip


 
Джо ©   (2007-12-12 02:30) [6]

Плюс учесть, что это только в Win 2000 библиотека называется icmp.dll, в других ОС — Iphlpapi.dll. Если МСДН нам не врет. Ну и еще немножко можно поправить саму функцию Ping.


 
DVM ©   (2007-12-12 09:28) [7]


> Плюс учесть, что это только в Win 2000 библиотека называется
> icmp.dll, в других ОС — Iphlpapi.dll.

в WinXP тоже icmp.dll. Да и в висте я думаю тоже.


 
DrPass ©   (2007-12-12 10:35) [8]


> Тут не подойдет внешняя программа ping

При большом желании можно и ее использовать. ExitCode ж для того и придуман...

> Удобнее будет воспользоваться функциями icmp.dll

Самый простой способ - взять компонентину TIdICMP


 
Eraser ©   (2007-12-12 15:10) [9]


> DrPass ©   (12.12.07 10:35) [8]


>  ExitCode ж для того и придуман...

ExitCode"ом там не отделаешься по-моему, нужно перенаправлять ввод/вывод.

> Самый простой способ - взять компонентину TIdICMP

к сожалению у способа, который применяется в этой библиотеке огромный изъян - будет работать только если юзер - админ.
Джо ©   (12.12.07 02:23) [5] - самый правильный вариант.


 
Джо ©   (2007-12-12 17:11) [10]

> [7] DVM ©   (12.12.07 09:28)
>
> > Плюс учесть, что это только в Win 2000 библиотека называется
>
> > icmp.dll, в других ОС — Iphlpapi.dll.
>
> в WinXP тоже icmp.dll. Да и в висте я думаю тоже.


MSDN по IP Help functions:
DLL: Requires Iphlpapi.dll on Windows Server "Longhorn", Windows Server 2003, and Windows XP. Requires Icmp.dll on Windows 2000 Server and Windows 2000 Professional.  
За что взял, за то и продаю :)
Хотя, проверил, вот у меня сейчас на XP есть две эти библиотеки.


 
Rouse_ ©   (2007-12-12 17:17) [11]


> Хотя, проверил, вот у меня сейчас на XP есть две эти библиотеки.

Там прямое перенаправление такого плана:
.text:7429113D ; Exported entry   5. IcmpSendEcho
.text:7429113D                 public IcmpSendEcho
.text:7429113D IcmpSendEcho    db "iphlpapi.IcmpSendEcho",0

Так что импорт через Icmp.dll должен везде работать :)


 
oldman ©   (2007-12-12 17:18) [12]


> чтобы делфи делал типа ping 192.168.0.1


рыдал...


 
Джо ©   (2007-12-12 17:51) [13]

> [11] Rouse_ ©   (12.12.07 17:17)
>
> > Хотя, проверил, вот у меня сейчас на XP есть две эти библиотеки.
>
> Там прямое перенаправление такого плана:
> .text:7429113D ; Exported entry   5. IcmpSendEcho
> .text:7429113D                 public IcmpSendEcho
> .text:7429113D IcmpSendEcho    db "iphlpapi.IcmpSendEcho",
> 0
> Так что импорт через Icmp.dll должен везде работать :)

А, ну, так тем лучше :)


 
nickla   (2007-12-26 16:18) [14]

В статьях на этом сайте поищи по слову icmp. Удивишься сильно - подробная статья что и как. У меня работает.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2008.01.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.008 c
2-1197658894
Unicode
2007-12-14 22:01
2008.01.27
Как вводить символы Unicode в окно редактора кода и в приложения?


3-1189681786
MZ
2007-09-13 15:09
2008.01.27
Замена символов в строке средствами SQL


15-1198078285
Dmitry S
2007-12-19 18:31
2008.01.27
Рисование


15-1198322066
homm
2007-12-22 14:14
2008.01.27
У меня счас крыша поедет


2-1198754067
Looser
2007-12-27 14:14
2008.01.27
Событие при нажатии Esc





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский