![]() |
cmd - Delphi
Подскажите пожалуйста!
Как написать правельно такое чтоб дельфи исполняло фукцию cmd? допустим при открытии delphi идет ping на узел? ping -n 350 -l 10000 00.000.00.00 Извеняюсь, я очень нубский новичег) |
Можно записать нужные тебе команды в файл с расширением *.cmd, а потом использовать функцию ShellExecute. Хотя это не лучший вариант, но рабочий :)
Вот пример, кинь на форму один button. Код:
unit Unit1; |
хм..) не это сильно палевно)))
Я хочу своему другу кинуть в автозагрузку прогу которая бы пинговала один сайтичег))) по этому вид консольда излишний) |
Цитата:
winexec('cmd /c ping -n 350 -l 10000 00.000.00.00', SW_HIDE); С автозагрузкой сам разберешся, не сложно будет (сам погуглишь на эту тему) |
CreateProcess/Pipe - наиболее гибкий вариант.
WinExec/ShellExecute - бяки |
wolmer, спасибо большое) я проверел с другом, его файрвол в бешенстве канает на ура))
Всем кто помогал и пытался помочь +++++ )) |
)
Крайне извеняюсь за наглость) Но хотел бы ещё узнать) На форме создать Edit1 и кнопку, и в Edit1 вписывать IP и кнопкой начать пинговать, как правельно осуществить, подскажите пожалуйста)? winexec('cmd /c ping -n 350 -l 10000 00.000.00.00', SW_HIDE);" - эта функция действительно работает))) Но в место IP то что вверху пишится 00.000.00.00 должно вводимое в поле Edit1 IP)) Блин трудно объяснить) но думаю меня понять можно) Хотел бы воспользоваться ситуацией и задать ещё один вопрос, если сайт какойто слабенький типо на движке мойвеб пинговать с разных компов, что с сайтом будет?)) и какой его конечный результат? |
Результат будет 0. Если же конечно в качестве сервера не используется P1 166mhz
|
Цитата:
|
Цитата:
ты помойму забыл закрыть кавычку как бы! после +edit1.text ) я закрыл серовно не компилит, не так не так! Вот что пишит как ошибку в твоем варианте " [Error] Unit1.pas(31): Incompatible types: 'String' and 'PAnsiChar' " Если так то winexec('cmd /c ping -n 350 -l 10000 '+edit1.text', SW_SHOW); такая ошибка [Error] Unit1.pas(31): Unterminated string |
хакеры =(
winexec('ping -n 350 -l 10000 yandex.ru', SW_SHOW); нафига вообще cmd??? |
Цитата:
winexec('ping -n 350 -l 10000 '+pchar(edit1.text), SW_SHOW); |
Неа, не так.
Вот так! winexec(PChar('ping -n 350 -l 10000 ' + edit1.text), SW_SHOW); Только что пробовал, работает. |
А почему бы тебе не использовать winsock? А фаерволы отключать програмно? Вполне рабочий вариант. Если нужны какието советы и помощь стучи в асю 194826нулёк
|
Да действительно работает))) Душевное спасибо Sams и всем людям что помогают новичкам)
|
Цитата:
Если создать на форме ещё два Edit и расположить так чтоб это было 350 количество пакетов и вписываемым в Edit2, и соответственно количество байт в Edit3 =) Как осуществить? Логически если подумать то както так чтоли winexec(PChar('ping -n +edit2.text -l +edit3.text ' + edit1.text), SW_SHOW); Но чтото не так! Оно компилирует но толку 0! И ещё вопрос... Вот если использовать этот код "winexec(PChar('ping -n 350 -l 10000 ' + edit1.text), SW_SHOW);" При нажатии на кнопку откроется cmd и будет писатся о обмене пакетов, а как это можно ликвидировать? |
Цитата:
winexec(PChar('ping -n '+edit2.text+' -l '+edit3.text+' '+edit1.text), SW_SHOW); |
)))СПасибо большое wolmer =)
Пока меня за наглость не забанели воспользуюсь случаем и спрошу ещё коечто по этой теме) Как сделать так что при нажатии на кнопку врубалось это (это текст батника), но нужно чтоб при нажтии кнопки был тот же эффект что и если я открыл бы БАТник), только не нужно говорить типо укажи путь к батнику) Цитата:
|
Цитата:
|
НУ сейчас постараюсь обьяснить поставленую себе задачу!
Хочу сделать чтоб через программу можно было изменять "число" в таблицах БД! В конкретной таблице! Решил сделать сразу запрос sql, но потом подумал также не сделаешь чтоб "приложение дельфи" изменяло конкретный параметр в .sql, и за этим инъектировало в БД... Как мне показалось самый оптимальный вариант, это сделать bat'ник в проге как бы, в котором остается лишь вписать в edit "число" и подтвердить кнопкой... И запросом таким в базе данных конкретный парамерт был изменен! SQL запрос на повышение нужным мне числе выглядит так Цитата:
Кстати понадобится ещё edit2 для вводи логина, так как в таблице ID логинов разные, а определить access_level нужно одному! Вот прикреплю скрин http://thumbnails19.imagebam.com/492...f349205030.gif |
мда вот извращенец... через прогу юзать консольный клиент mysql ) вообщето с mysql сервером идут либы и хеадеры, заюзав которые ты сможешь использовать функции для работы с бд...
но если ты хочешь извратится, заюзай пайп :) Изучай ))) Q. Как использовать базу данных MySQL в своей программе? (под Windows) Win32 API. Урок 21. Пайп |
| Время: 09:08 |