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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> !!!Срочный поиск!!! Нигде нет качественного, компонента консоли. Эмулятора CMD. 
:(
    Опции темы
Bes
Дата 12.10.2005, 08:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Оказывается нигде нет компонента полностью имитирующего работу с командной строкой. Так, например, команда ftp не срабатывает ни в одном найденом мною примере. Почему это происходит, неизвестно. Предлагаю объединиться и найти или даже написать компонент консоль и выложить этот шедевр в копилку ВинГрада.
PM MAIL   Вверх
Alex
Дата 12.10.2005, 21:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

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



А чем Cmd не устраивает?


--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
Zero
Дата 12.10.2005, 22:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2169
Регистрация: 23.10.2004
Где: Россия, г. Рязань

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



Цитата(Bes @ 12.10.2005, 08:45)
Предлагаю объединиться и найти или даже написать компонент консоль

А универсальным способом, будет:
1. кинуть поле Edit;
2. и программиру те команды которые те нужны, в часности запуск ShelExecute из модуля ShelApi, ну и т.д.
PM MAIL ICQ   Вверх
Петрович
Дата 13.10.2005, 08:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1000
Регистрация: 2.12.2003
Где: Москва

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



Цитата(Bes @ 12.10.2005, 09:45)
Так, например, команда ftp не срабатывает ни в одном найденом мною примере.

Ну уж не знаю где ты такие примеры находил. ftp нормально работает.


--------------------
Все знать невозможно, но хочется
PM ICQ   Вверх
Bes
Дата 13.10.2005, 09:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



2Alex: CMD не устраивает тем, цто она не втроена в мою программу т.е.
1) что я не могу выдрать из нее содержимое окна и отдать команду к ней в окно
2) что ее можно закрыть без моей программы т.е. программы разделяется на два живущих своей жизнью окна.

2Zero: так я уже сделал, но задача в другом.
Зачем изобретать велосипед и писать под каждую задачу новый код. а если мне завтра понадобиться не только запускать приложения но и лазить по папкам сопировать удалять файлы пинговать сеть управлять безопасность и доступом использовать фтп и телнет.. и пр. Что, для каждой задачи встраивать новый модуль и делать программу более тяжелой и менее надежной? Может просто использовать готовое решение - встроенную консоль которую и за собой таскать не надо и работает там все отлично.

2Петрович: Я не нашел, а можно посмотреть на то, что у вас работает с фтп?
PM MAIL   Вверх
Alex
Дата 13.10.2005, 10:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

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



Цитата(Bes @ 13.10.2005, 10:50)
1) что я не могу выдрать из нее содержимое окна и отдать команду к ней в окно
2) что ее можно закрыть без моей программы т.е. программы разделяется на два живущих своей жизнью окна.

А вот тут позволю не согласиться, все зависит от того как вы вызовите процесс


--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
Bes
Дата 13.10.2005, 10:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



2Alex: В приципе я готов рассмотреть любое решения данной проблемы. Если можно работать с консолью из приложения и корректно получать и передавать ввод-вывод то я только за. Подскажите тогда пожалуйста, как это делается. Спасибо.
PM MAIL   Вверх
Петрович
Дата 13.10.2005, 15:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1000
Регистрация: 2.12.2003
Где: Москва

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



Цитата(Bes @ 13.10.2005, 11:36)
Если можно работать с консолью из приложения и корректно получать и передавать ввод-вывод то я только за.

Не у всякого приложения можно перехватить ввод/вывод. Только если приложение использует для этого консольные потоки.
Кстати, ввод/вывод самой cmd.exe получить вряд-ли получится. Поэтому, либо придется самому реализоывать вызов вутренних команд - а изобретать уже неоднократно изобретенный велосипед кому охота?
Либо, создавай у себя в приложени консольное окно, и запускай cmd назначив ему созданное консльоное окно. В общем что-то вроде этого. Но, это решение будет не универсальным. Под разными виндами это делается по разному.
Короче, как подумаешь об этом всем, так сразу и понимаешь - гемору много, а кайфа в результате чуть.



--------------------
Все знать невозможно, но хочется
PM ICQ   Вверх
Bes
Дата 14.10.2005, 10:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



2Петрович:
Цитата
Ну уж не знаю где ты такие примеры находил. ftp нормально работает.

Что вы имели ввиду под этим?

И вообще я так и не понял, идеи есть как решить эту проблему?
PM MAIL   Вверх
Петрович
Дата 14.10.2005, 12:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1000
Регистрация: 2.12.2003
Где: Москва

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



Цитата(Bes @ 14.10.2005, 11:38)
Что вы имели ввиду под этим?

И вообще я так и не понял, идеи есть как решить эту проблему?


Тогда, вернемся к началу.
Встречный вопрос smile. Что имеется ввиду под:

Цитата(Bes @ 12.10.2005, 09:45)
Так, например, команда ftp не срабатывает ни в одном найденом мною примере.

Оссобенно под "не срабатывает"?


--------------------
Все знать невозможно, но хочется
PM ICQ   Вверх
Bes
Дата 17.10.2005, 09:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Это значит, что в любом найденном мною примере работы с консолью при вводе в консоль комманды ftp (после чего в cmd.exe выпадывает приглашение для работы с фтп) программа виснет.
Использование компонентов для работы непосредственно с фтп типа TNMFTP или как там ее... тут ни причем.
PM MAIL   Вверх
Петрович
Дата 17.10.2005, 12:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1000
Регистрация: 2.12.2003
Где: Москва

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



Цитата(Bes @ 17.10.2005, 10:43)
при вводе в консоль комманды ftp (после чего в cmd.exe выпадывает приглашение для работы с фтп) программа виснет.

Естественно.
При вводе в cmd.exe комманды ftp, запускается соответствующая программа. А она, работает интерактивно. Т.е. ей надо со стандартного потока ввода подавать комманды.
И вообще, ты, по моему, сваливаеш в кучу разные понятия. Консоль, это консоль. А cmd.exe, это cmd.exe.
Т.е., консоль, это не обязательно cmd.exe (или другой интерпретатор). Это всего лишь окно, выполняющее две задачи:
1 - отображение того что выводит связанная с консолью программа в стандартный поток вывода и в поток ошибок,
2 - посылку в стандартный поток ввода всего того что пользователь понажимает на клаве.

Частным случаем является запущенная например программа cmd.exe, связанная с консольным окном.


--------------------
Все знать невозможно, но хочется
PM ICQ   Вверх
Bes
Дата 17.10.2005, 13:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Блин, Круто! Ну за что уважаю Петровича это за способность увидеть ошибку в 17-й строке. Точно.
Цитата
И вообще, ты, по моему, сваливаеш в кучу разные понятия. Консоль, это консоль. А cmd.exe, это cmd.exe.

Я ведь так и думал!!!
Признаюсь чайник, но нашелся же человек.....
я даже запустил из коммандной строки ftp и запустилась консоль которая мне нужна.
Вот только теперь другая проблема:
Цитата
1 - отображение того что выводит связанная с консолью программа в стандартный поток вывода и в поток ошибок,
2 - посылку в стандартный поток ввода всего того что пользователь понажимает на клаве.

Как это сделать?
или
Цитата
Частным случаем является запущенная например программа cmd.exe, связанная с консольным окном.

Как сделать чтобы эта программа была связана не с консольным окном а с TMemo?
Вот.
PM MAIL   Вверх
Neitron
Дата 17.10.2005, 13:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 580
Регистрация: 3.10.2005
Где: Москва

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



см MSDN ф-ции работы с КОНСОЛЬЮ.



--------------------
Хороший программист никогда ничего не делает хорошо с первого раза. Он понимает важность патчей.
Ⓘ ⓁⒾⓀⒺ ⓂⓄⓏⒾⓁⓁⒶ
PM MAIL   Вверх
Bes
Дата 17.10.2005, 14:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Не конструктивно. Так на любой вопрос можно ответить.
Вопрос по базам данных - "см. MSDN ф-ии работы с базами данных"
Вопрос по печати - "см. MSDN ф-ии работы с печатью"
..........
главное не забывать модное слово MSDN smile

Это приравнивается к тому что "изучи эту область программирования" но.
1) Я все эти задачи могу решить и другими способами.
2) я как раз ищу (см. тему) готовый компонент, функцию, способ.
P.S. конструировать с нуля..... ну вообще-то это должно быть очень,.. очень просто. Просто я не знаю как.
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

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

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

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


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

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


 




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


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

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