Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 50, средняя оценка - 4.66
vortexx1
6 / 6 / 2
Регистрация: 06.03.2011
Сообщений: 269
#1

Программный запуск командной строки - C++

23.06.2011, 22:58. Просмотров 6805. Ответов 14
Метки нет (Все метки)

Здравствуйте.

Как сделать так, чтобы при запуске программа открывала командную строку, прописывала там что-нибудь и "нажимала" Enter?

Спасибо.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
easybudda
Эксперт С++
9442 / 5465 / 926
Регистрация: 25.07.2009
Сообщений: 10,489
23.06.2011, 23:04     Программный запуск командной строки #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C
1
2
3
4
#include <stdlib.h>
...
system("прописывала там что-нибудь");
...
а энтер сам нажмётся.
vortexx1
6 / 6 / 2
Регистрация: 06.03.2011
Сообщений: 269
23.06.2011, 23:09  [ТС]     Программный запуск командной строки #3
Спасибо.
А можно как-то сделать так, чтобы консоль в трей сворачивалась?
lvlkoo
24.06.2011, 00:04
  #4

Не по теме:

Чувствую злые замыслы

OstapBender
583 / 521 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
24.06.2011, 02:21     Программный запуск командной строки #5
vortexx1,
C
1
2
Hide = FindWindowA("ConsoleWindowClass", NULL);
ShowWindow(Hide,0);
правда, не в трей а вообще скрывается.
вам осталось только объявить Hide
vortexx1
6 / 6 / 2
Регистрация: 06.03.2011
Сообщений: 269
24.06.2011, 15:08  [ТС]     Программный запуск командной строки #6
объявить Hide
то есть?

C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <stdlib.h>
#include <windows.h>
 
int main()
{
    system("...");
    
    Hide = FindWindowA("ConsoleWindowClass", NULL);
    ShowWindow(Hide,0);
 
    return 0;
}
У меня это вообще не компилируется. Что не так?
OstapBender
583 / 521 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
24.06.2011, 15:44     Программный запуск командной строки #7
vortexx1, разумеется это не будет компилироваться. переменная Hide не объявлена.
………………..,-~*’`¯lllllll`*~,
…………..,-~*`lllllllllllllllllllllllllll¯`*-,
………,-~*llllllllllllllllllllllllllllllllllllllllllll*-,
……,-*llllllllllllllllllllllllllllllllllllllllllllllllllllll.\
….;*`lllllllllllllllllllllllllll,-~*~-,llllllllllllllllllll\
…..\lllllllllllllllllllllllllll/………\;;;;llllllllllll,-`~-,
……\lllllllllllllllllllll,-*………..`~-~-,…(.(¯`*,`,
…….\llllllllllll,-~*…………………)_-\..*`*;..)
……..\,-*`¯,*`)…………,-~*`~.……………/
………|/…/…/~,……-~*,-~*`;……………./.\
……../…/…/…/..,-,..*~,.`*~*…………….*…\
…….|…/…/…/.*`…\………………………)….)¯`~,
…….|./…/…./…….)……,.)`*~-,…………/….|..)…`~-,
……/./…/…,*`-,…..`-,…*`….,---……\…./…../..|………¯```*~-
……(……….)`*~-,….`*`.,-~*.,-*……|…/.…/…/…………\
…….*-,…….`*-,…`~,..``.,,,-*……….|.,*…,*…|……\
……….*,………`-,…)-,…………..,-*`…,-*….(`-,…
xAtom
914 / 739 / 60
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
24.06.2011, 15:52     Программный запуск командной строки #8
C++
1
system("ping 127.0.0.1");
vortexx1
6 / 6 / 2
Регистрация: 06.03.2011
Сообщений: 269
24.06.2011, 16:39  [ТС]     Программный запуск командной строки #9
Объявлять как обычную переменную?
Если да, то какого типа?
DigsiL
10 / 10 / 1
Регистрация: 14.01.2011
Сообщений: 113
24.06.2011, 16:44     Программный запуск командной строки #10
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от vortexx1 Посмотреть сообщение
Здравствуйте.

Как сделать так, чтобы при запуске программа открывала командную строку, прописывала там что-нибудь и "нажимала" Enter?

Спасибо.
Щита что для вас подойдет функция WinExec()
вот её описание :

SW_HIDE Окно в скрытом режиме.
SW_MAXIMIZE Окно максимального размера
SW_MINIMIZE Окно находится в свернутом виде, активируется следующее верхнее окно в Z последовательности.
SW_RESTORE Активирует и показывает окно. Если окно свернуто или развернуто, Windows восстанавливает его к первоначальному размеру и позиции. Приложение должно определить этот флаг при восстановлении свернутого окна.
SW_SHOW Активирует окно и выводит его в текущих размерах и позиции.
SW_SHOWMAXIMIZED Активирует и показывает окно в развернутом виде.
SW_SHOWMINIMIZED Активирует и показывает окно в свернутом виде.
SW_SHOWMINNOACTIVE Отображает окно в свернутом виде. Активное окно остается активным.
SW_SHOWNA Отображает окно в текущем состоянии. Активное окно остается активным.
W_SHOWNORMAL Активирует и показывает окно. Если окно свернуто или развернуто, Windows восстанавливает его к первоначальному размеру и позиции. Приложение должно определить этот флаг при показе окна в первый раз.

Пример её использования
C
1
WinExec("C:\\WINDOWS\\NOTEPAD.EXE",SW_MAXIMIZE);
OstapBender
583 / 521 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
24.06.2011, 16:52     Программный запуск командной строки #11
vortexx1, так вот это ТЫ мне должен сказать какого типа!
скажи пожалуйста, как ты вообще собираешься что нибудь делать сам?
любой РАЗУМНЫЙ человек найдет ответ на этот вопрос за 10 секунд даже не буду говорить где.
vortexx1
6 / 6 / 2
Регистрация: 06.03.2011
Сообщений: 269
24.06.2011, 17:24  [ТС]     Программный запуск командной строки #12
C++
1
2
3
4
5
6
7
8
9
10
#include <stdlib.h>
#include <windows.h>
 
int main()
{
    WinExec("C:\\WINDOWS\\SYSTEM32\\CMD.EXE", SW_HIDE);
    system ("...");
    
    return 0;
}

Что-то не хочет ничего никуда прятать...
DigsiL
10 / 10 / 1
Регистрация: 14.01.2011
Сообщений: 113
24.06.2011, 17:30     Программный запуск командной строки #13
Цитата Сообщение от vortexx1 Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
#include <stdlib.h>
#include <windows.h>
 
int main()
{
    WinExec("C:\\WINDOWS\\SYSTEM32\\CMD.EXE", SW_HIDE);
    system ("...");
    
    return 0;
}

Что-то не хочет ничего никуда прятать...
Ок держи тогда готовый код
C
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <windows.h>
void Hide()
{
  HWND Hide;
  AllocConsole();
  Hide = FindWindowA("ConsoleWindowClass", NULL);
  ShowWindow(Hide,0);
}
void  main()
{
    Hide();
    system("cmd");
}
vortexx1
6 / 6 / 2
Регистрация: 06.03.2011
Сообщений: 269
24.06.2011, 18:13  [ТС]     Программный запуск командной строки #14
DigsiL, не компилирует, говорит, что "main must return int".
Меняю "void main" на "int main", тоже не работает, говорит, что "Permission denied, ld returned 1 exit status".
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.06.2011, 18:51     Программный запуск командной строки
Еще ссылки по теме:

C++ Запуск программы из командной строки
C++ Запуск программы с параметрами с командной строки
Запуск командной строки VS из конкретного каталога C++
Запуск в командной строке C++
Запуск из командной строки и вывод в файл C++

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

Или воспользуйтесь поиском по форуму:
lvlkoo
.NET C#,ASP.NET MVC
334 / 290 / 101
Регистрация: 16.10.2010
Сообщений: 1,286
Завершенные тесты: 2
24.06.2011, 18:51     Программный запуск командной строки #15
Если инт ставиш то и return соответствующий
EXIT_SUCCESS или целочисленное значение
Yandex
Объявления
24.06.2011, 18:51     Программный запуск командной строки
Ответ Создать тему
Опции темы

Текущее время: 01:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru