Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.01.29;
Скачать: CL | DM;

Вниз

Консольное приложение   Найти похожие ветки 

 
Compton's G   (2006-01-14 19:01) [0]

Как, скрыть работу консольного приложения, я имею введу, отсутсвие видимоси окна.


 
palva ©   (2006-01-14 19:19) [1]

Свернуть окно.


 
Compton's G   (2006-01-14 19:23) [2]

Каким образом свернуть?


 
palva ©   (2006-01-14 19:33) [3]

Зависит от того, кто вы. Если оператор, то нажать кнопку мышкой, если вы являетесь этим самым консольным приложением, то послать сообщение окну, если другая программа, то найти окно и тоже послать ему сообщение.
Вы напишите подробнее и вам сразу ответит куча народу.


 
Compton's G   (2006-01-14 19:44) [4]

... я являюсь этим самым окном.

Да какое именно сообщение нужно послать, окну?


 
Джо ©   (2006-01-14 19:49) [5]


 H := GetForegroundWindow();
 ShowWindow(H,SW_HIDE);


 
palva ©   (2006-01-14 20:02) [6]

Джо ©   (14.01.06 19:49) [5]
Да, так, наверно, проще. А я имел ввиду такой код:

const
 WM_SYSCOMMAND: Word = $0112;
var
 w:HWND;
begin
 w := GetForegroundWindow;
 SendMessage(w, WM_SYSCOMMAND, SC_MINIMIZE, 0);


 
Compton's G   (2006-01-14 20:09) [7]


>  H := GetForegroundWindow();
>  ShowWindow(H,SW_HIDE);


нет мне нужно, чтобы пользователь даже не подозревал, что программа запускается


 
Compton's G   (2006-01-14 20:12) [8]

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


 
begin...end ©   (2006-01-14 20:15) [9]

> Джо ©   (14.01.06 19:49) [5]
> palva ©   (14.01.06 20:02) [6]

Так можно скрыть совсем не то окно, которое нужно.

> Compton"s G   (14.01.06 20:12) [8]

Если окно консоли вообще не нужно, зачем тогда создавать именно консольное приложение?


 
Compton's G   (2006-01-14 20:19) [10]


> Если окно консоли вообще не нужно, зачем тогда создавать
> именно консольное приложение?


а что для этого подойдел лучше всего?


 
begin...end ©   (2006-01-14 20:25) [11]

> Compton"s G   (14.01.06 20:19) [10]

Можно создать просто приложение (без окон). Писать код в файле проекта (dpr), между begin и end.


 
Кефир87 ©   (2006-01-14 20:48) [12]

...Убрать директиву {$APPTYPE CONSOLE} 8))


 
Compton's G   (2006-01-14 21:11) [13]


> Кефир87 ©   (14.01.06 20:48) [12]
>
> ...Убрать директиву


спасибо


 
palva ©   (2006-01-14 21:11) [14]

begin...end ©   (14.01.06 20:15) [9]
> Так можно скрыть совсем не то окно, которое нужно.
Тогда можно так:

function GetConsoleWindow: Hwnd; external "kernel32.dll";
...
begin
 w := GetConsoleWindow;
 ...
 //  ShowWindow(w, SW_HIDE);
 SendMessage(w, WM_SYSCOMMAND, SC_MINIMIZE, 0);

Кстати, SendMessage сворачивает окно на панель задач, а при использовании ShowWindow окно полностью исчезает и задачу приходится убивать из диспетчера задач.


 
begin...end ©   (2006-01-14 21:13) [15]

> palva ©   (14.01.06 21:11) [14]

> Тогда можно так

В Win2k и выше -- можно.



Страницы: 1 вся ветка

Текущий архив: 2006.01.29;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.058 c
15-1136745588
VirEx
2006-01-08 21:39
2006.01.29
<![CDATA[<


15-1136754461
DillerXX
2006-01-09 00:07
2006.01.29
Клиническая смерть


15-1136048842
Arazel
2005-12-31 20:07
2006.01.29
Нужна полная документация и если можно примеры по NTFS


2-1136828068
Viktop
2006-01-09 20:34
2006.01.29
Удалить себя


3-1133208408
Alexandr Bydantcev
2005-11-28 23:06
2006.01.29
Постоянное увеличение объема базы