Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [VC#] Работа с консолью - По средствам системы, Как закрыть, скрыть и развернуть консоль 
:(
    Опции темы
MuForum
  Дата 1.2.2008, 00:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Доброе время суток!
Интересует следующие вопросы:
  •  Как можно менять статус консольного приложения? (Show/Hide)
  •  Как можно закрыть консольное приложение?
P.S. -> Всё необходимо выполнять из .exe программы, в которой есть данные консольной программы: Path(Полный путь), PID.


# Дополнение:
- Ниже показанный способ консоль не закрывает.
Код

// Если есть 'PID' программы.
......
......
......
                for (int index = 0; index < FileList.Count; index++)
                {
                    try
                    {
                        System.Diagnostics.Process ProId = System.Diagnostics.Process.GetProcessById(FileList[index].PID);
                        ProId.CloseMainWindow();
                        if (!ProId.HasExited) ProId.Kill();
                        FileList[index].Exists = 0x00;
                    }
                    catch (Exception) { FileList[index].Exists = 0x00; };
                }
......
......
......
// Если есть только полный путь к программе:
......
......
......
            for (int index = 0; index < FileList.Count; index++)
            {
                string path = FileList[index].Path.ToLower();
                System.Diagnostics.Process[] processes;
                processes = System.Diagnostics.Process.GetProcessesByName(System.IO.Path.GetFileNameWithoutExtension(path));
                foreach (System.Diagnostics.Process process in processes)
                {
                    try
                    {
                        process.CloseMainWindow();
                        if (!process.HasExited) process.Kill();
                        FileList[index].Exists = 0x00;
                    }
                    catch (Exception) { FileList[index].Exists = 0x00; break; }
                }
            }


Это сообщение отредактировал(а) MuForum - 1.2.2008, 11:51


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа!" (Р. Шекли)
PM MAIL WWW ICQ Skype MSN   Вверх
mr.DUDA
Дата 1.2.2008, 10:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


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

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



Process.Kill прерывает работу консольного приложения, но консольное окно не закрывает (там выводится "для продолжения нажмите любую клавишу"). Нужно искать инфу по консольным функциям WinAPI, к сожалению мсдн-а сейчас нет чтоб посмотреть.


--------------------
user posted image
PM MAIL WWW   Вверх
luxadevianta
Дата 8.4.2009, 17:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



А кто подскажет, как можно заставить оконное приложение открыть на время консоль, а затем закрыть, когда она не нужна? Возможно ли вообще такое делать?
PM   Вверх
Retro
Дата 8.4.2009, 17:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Диалектик
***


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

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



luxadevianta, ссылка..
Если не поможет, то вот еще одна.
PM MAIL   Вверх
luxadevianta
Дата 8.4.2009, 17:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Спасибо. Сейчас попробую первую ссылку. Если не поможет, думаю, вторая должна точно решить проблему  smile 
PM   Вверх
luxadevianta
Дата 8.4.2009, 18:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Спасибо! Проблему решил! Первая ссылка сразу же помогла.
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

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


 




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


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

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