Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Передача текста консольному приложению 
:(
    Опции темы
Spectre12
Дата 25.9.2006, 10:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 30
Регистрация: 22.9.2006

Репутация: нет
Всего: нет



Есть консольное приложение, которое запускается, грубо говоря, из командной строки в моей программе.
Как можно передать этому приложению текст, дабы не вбивать его ручками?
  
PM MAIL   Вверх
Sartorius
Дата 25.9.2006, 14:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1568
Регистрация: 18.7.2006
Где: Ivory tower

Репутация: нет
Всего: 37



text.txt > myApp.exe
PM MAIL ICQ   Вверх
Spectre12
Дата 25.9.2006, 14:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 30
Регистрация: 22.9.2006

Репутация: нет
Всего: нет



не ботает
PM MAIL   Вверх
Alexeis
Дата 25.9.2006, 14:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 16
Всего: 459



Spectre12, а почему бы не передавать качестве параметра командной строки?


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Spectre12
Дата 25.9.2006, 15:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 30
Регистрация: 22.9.2006

Репутация: нет
Всего: нет



тоже что-то не то
 smile 
PM MAIL   Вверх
Romikgy
Дата 25.9.2006, 15:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 13
Всего: 146



создай своим приложением текстовый файл, и в качестве параметра передай консольному название этого файла, а внутри консольного прочитай файл с текстом


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
Sartorius
Дата 25.9.2006, 15:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1568
Регистрация: 18.7.2006
Где: Ivory tower

Репутация: нет
Всего: 37



Цитата(Spectre12 @ 25.9.2006,  16:04)
тоже что-то не то
 smile

 Покажи исходник(хотя бы часть)... А то вообще не понятно ,  что там у тебя не получается...
Что ты в нем делаешь хотя бы : со стандартного ввода читаешь? 
PM MAIL ICQ   Вверх
Spectre12
Дата 25.9.2006, 15:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 30
Регистрация: 22.9.2006

Репутация: нет
Всего: нет



Ладненько:
 - консольное приложение - nslookup.exe (внутри уже ничего не допишешь).
 - посылаю ему IP
 - получаю адрес сайта, причем для каждого IP nslookup запускается по 1 разу
 - хотелось бы за 1 открытие обработать весь список IP
PM MAIL   Вверх
Sartorius
Дата 25.9.2006, 15:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1568
Регистрация: 18.7.2006
Где: Ivory tower

Репутация: нет
Всего: 37



Цитата

 - посылаю ему IP

Просто ввдодишь после запуска?

PM MAIL ICQ   Вверх
Spectre12
Дата 25.9.2006, 15:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 30
Регистрация: 22.9.2006

Репутация: нет
Всего: нет



Цитата

 
Цитата

  - посылаю ему IP
 

Просто ввдодишь после запуска?


Нет, как параметр.
PM MAIL   Вверх
Sartorius
Дата 25.9.2006, 15:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1568
Регистрация: 18.7.2006
Где: Ivory tower

Репутация: нет
Всего: 37



Тогда сделай что-то типа :
for /l %i in (0, 1, 255) do nslookup 192.168.5.%i > log.txt
PM MAIL ICQ   Вверх
Spectre12
Дата 25.9.2006, 16:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 30
Регистрация: 22.9.2006

Репутация: нет
Всего: нет



Тоже по одному IP...
И вообще у меня номера IPшников не подряд идут.
PM MAIL   Вверх
Romikgy
Дата 25.9.2006, 16:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 13
Всего: 146



через пайпы создай свою консоль и запускай что хочешь и с какими параметрами, а пайпы нужны дабы втянуть данные выданные 
Цитата(Spectre12 @  25.9.2006,  14:18 Найти цитируемый пост)
nslookup.exe

на консоль


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
Spectre12
Дата 26.9.2006, 09:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 30
Регистрация: 22.9.2006

Репутация: нет
Всего: нет



Цитата

 а пайпы нужны дабы втянуть данные выданные 


Нашел тут в сети: http://olddos.narod.ru/doc/comp/bsp/v27/ch2.htm

Пойду разбиратся...

PM MAIL   Вверх
Snowy
Дата 26.9.2006, 09:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 30
Всего: 484



Цитата(Spectre12 @  25.9.2006,  15:18 Найти цитируемый пост)
- получаю адрес сайта, причем для каждого IP nslookup запускается по 1 разу - хотелось бы за 1 открытие обработать весь список IP
Никак. Либо делай несколько запусков, либо пиши свою программу.
PM MAIL   Вверх
Spectre12
Дата 26.9.2006, 10:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 30
Регистрация: 22.9.2006

Репутация: нет
Всего: нет



Цитата

 Никак. Либо делай несколько запусков, либо пиши свою программу. 


Жаль...  А есть возможность ускорить работу этой функции (задать время обработки, например)?
Код

function IPAddrToName(IPAddr : string): string;
var
  SockAddrIn: TSockAddrIn;
  HostEnt: PHostEnt;
  WSAData: TWSAData;
begin
  WSAStartup($101, WSAData);
  SockAddrIn.sin_addr.s_addr:= inet_addr(PChar(IPAddr));
  HostEnt := gethostbyaddr(@SockAddrIn.sin_addr.S_addr, 4, AF_INET);
  if HostEnt <> nil
   then result := StrPas(Hostent^.h_name)+#9+'('+IPAddr+')' 
   else result := IPAddr;
end;

PM MAIL   Вверх
Snowy
Дата 26.9.2006, 10:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 30
Всего: 484



Запускай несколько тредов - по одному на каждый адрес.
Не заметишь, как всё продетектит.
PM MAIL   Вверх
Spectre12
Дата 26.9.2006, 10:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 30
Регистрация: 22.9.2006

Репутация: нет
Всего: нет



Цитата

Запускай несколько тредов - по одному на каждый адрес.
Не заметишь, как всё продетектит. 


 smile 
енто про function IPAddrToName(IPAddr : string): string;
или nslookup.exe?
PM MAIL   Вверх
Snowy
Дата 26.9.2006, 11:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 30
Всего: 484



Про IPAddrToName
Просто ты детектишь один адрес, потом второй, потом третий. И каждый раз ждёшь ответа.
Запускай все адреса сразу, но в разных тредах.
Они отработают одновременно.
PM MAIL   Вверх
Spectre12
Дата 26.9.2006, 14:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 30
Регистрация: 22.9.2006

Репутация: нет
Всего: нет



Цитата

 Запускай все адреса сразу, но в разных тредах.

Где я столько тредов нарою smile  ?

потоки, так потоки...
Сел за изучение явления...
PM MAIL   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: WinAPI и системное программирование"
Snowybartram
MetalFanbems
PoseidonRrader
Riply

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • 99% ответов по WinAPI можно найти в MSDN Library, оставшиеся 1% здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема »


 




[ Время генерации скрипта: 0.0645 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.