Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.85/27: Рейтинг темы: голосов - 27, средняя оценка - 4.85
4 / 1 / 0
Регистрация: 13.01.2009
Сообщений: 26

Запуск програмки через командную строку

03.02.2010, 23:19. Показов 5351. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Сразу говорю, что Builder'ом не дружу, и с с++ не очень, но писать надо, потому у меня несколько вопросов, надеюсь кто-нить поможет))

Не буду расписывать свою реальную задачу, приведу ее к виду учебной.

Программа должна выводить Имя и Фамилию человека. (printname.exe)
Если вызов через командную строку и задаются аргументы (printname Artem Budenov), то в окне программки выводится в любом виде эти фамилия и имя.
Если вызов через командную строку без аргументов - то предлагается форма для заполнения Фамилии и Имени.

Если приложение консольное, то функция хорошо сюда подходит

C++
1
2
3
4
5
6
int main(int argc, char* argv[])
{
if (argc>1)
//что-то делаем
return 0;
}
По-моим идея алгоритм должен быть
1. Проверяем были ли указаны аргументы
да - открываем/создаем форму где выводим что нам нужно
нет - открываем/создаем другую форму

Как соединить и проверку аргументов для вызова с помощью командной строки и дальнейшую работу с окнами...

П.с. Ситуация если вводят только имя или только фамилию, и используют ключи, что бы определить имя это или фамилия..
Как ключи должны обрабатываться? Или они как аргументы тоже идут.. (бррр, запуталась)
Возможно кто-нить приведет пример просто вызова программки с ключами..то, что нуна в команд строке писать..

Надеюсь получилось донести суть задачи
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.02.2010, 23:19
Ответы с готовыми решениями:

Запуск формы через командную строку с параметрами
Знаю, что в консоли можно получить данные из командной строки int main(int argc, char *argv) { // Инструкции return 0; } ...

Сборка проекта через командную строку
Доброе время суток всем, подскажите как можно собрать уже готовый проект(с++builder XE3) через командную строку. В идеале хотелось бы...

Закрытие программ через командную строку
помогите, вирус поймал, блочит гугл, в диспетчер захожу, при наведении на процессы, процессы исчезают, как через командную строку закрыть...

3
Покинул форум
3189 / 1368 / 109
Регистрация: 29.01.2010
Сообщений: 2,887
04.02.2010, 14:13
На событие OnFormCreate() вешай код
Code
1
2
3
4
5
6
7
8
9
 for (int i=1;i<=ParamCount();i++)
  {
    if (LowerCase(ParamStr(i)) == "beep")
      Beep(10000,1000);
      if (LowerCase(ParamStr(i)) == "red")
      Form1->Color=clRed;
    else if (LowerCase(ParamStr(i)) == "exit")
      Application->Terminate();
  }
ParamStr(i) соответствует введенному ключу. Если ты ввел ключи: red beep exit , то программа запустится, пропищит, закрасит форму красным цветом и сделает себе харакири. Вроде то о чем ты спрашивал.
1
4 / 1 / 0
Регистрация: 13.01.2009
Сообщений: 26
04.02.2010, 14:23  [ТС]
Ну во-первых я девушка) Во-вторых спасибо, но я зашла на форум уже зная ответ

Да, ParamCount() и ParamStr(i) использовала. Ключи передаются так же как обычные параметры

C++
1
2
3
4
5
6
7
8
9
WINAPI WinMain(HINSTANCE, HINSTANCE, [B]LPSTR CommandLine[/B], int)
{//Выводим все ключи поочереди
  for (int i = 0; i  <= ParamCount(); i++)
  {
     MessageBox(Form1, ParamStr(i).c_str(), "caption", 0);
  }
 
......
}
Параметр функции выделенным жирным как раз отвечает за то, что передается в командной строке
0
Покинул форум
3189 / 1368 / 109
Регистрация: 29.01.2010
Сообщений: 2,887
04.02.2010, 14:30
Во первых - 1000 извинений!!!! Я просто...извини! Во вторых - не за что. Всегда приятно помочь даме!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.02.2010, 14:30
Помогаю со студенческими работами здесь

Управление программой через командную строку
Доброго времени суток. Есть программа на с++ в Builder 6 взятая тут: ...

Компиляция через командную строку в RAD Studio
Здравствуйте. Образовался вопрос. Можно ли как-нибудь генерировать файл через Windows CMD? Сейчас использую RAD Studio. И если...

Как в windows сделать динамическую библиотеку из файлов .cpp через командную строку ?
Здраствуйте, вопрос состоит в следующем, как у Виндовс через командную строку сделать динамеческую библиотеку из файлов .cpp. ...

Запуск через командную строку
При запуске программы через командную строку возникает ошибка: Может быть, кто сталкивался

Запуск через командную строку
Имеется код: #include &lt;stdio.h&gt; int main(int argc,char *argv) { char *rezhim; printf(&quot;%s\n&quot;,argv); rezhim=argv; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru