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

Вниз

Закрыть доступ   Найти похожие ветки 

 
DENNIS ©   (2004-01-18 12:30) [0]

Как сделать недоступной кнопку ПУСК, иконки на столе и т.п. в WIN9x/NT


 
DVM ©   (2004-01-19 18:32) [1]

FindWindow() + EnableWindow()


 
Floppy   (2004-01-19 19:17) [2]

{Cпрятать кнопку "Пуск"}
begin // только под NT
Rgn := CreateRectRgn(0, 0, 0, 0);
SetWindowRgn(FindWindowEx(FindWindow("Shell_TrayWnd", nil),
                                                   0,
                                                  "Button",
                                                   nil),
                                                   Rgn,
                                                   true);
end;

begin //только под NT
{Показать кнопку "Пуск"}
SetWindowRgn(FindWindowEx(FindWindow("Shell_TrayWnd", nil),
                                                   0,
                                                  "Button",
                                                   nil),
                                                   0,
                                                   true);
end;

procedure TForm1.Button3Click(Sender: TObject);
begin //вроде под всеми вынями
{Запретить кнопку "Пуск"}
EnableWindow(FindWindowEx(FindWindow("Shell_TrayWnd", nil),
                                                   0,
                                                   "Button",
                                                   nil),
                                                   false);
end;

begin //вроде под всеми вынями
{Разрешить кнопку "Пуск"}
EnableWindow(FindWindowEx(FindWindow("Shell_TrayWnd", nil),
                                                   0,
                                                   "Button",
                                                   nil),
                                                   true);
end;


 
DENNIS ©   (2004-01-22 20:33) [3]

Мерси!!! А как на счет Других элементов управления Винды


 
Ig ©   (2004-01-22 20:54) [4]

>Floppy   (19.01.04 19:17) [2]
А как насчет клавиши на клавиатуре типа "Win", после всех этих манипуляций, при нажатии этой клавиши, она срабатывает как нажатие кнопки пуск! ;)
P.S. Хоть доступна кнопка, хоть не доступна, результат один и тот-же!


 
Intell ©   (2004-01-23 18:39) [5]

Как скрыть/показать иконки на рабочем столе?

Просто впишите этот кусок кода в implementation:

procedure ShowDesktop(const YesNo : boolean);
var h : THandle;
begin
h := FindWindow("ProgMan", nil);
h := GetWindow(h, GW_CHILD);
if YesNo = True then
  ShowWindow(h, SW_SHOW)
else
  ShowWindow(h, SW_HIDE);
end;

Создайте кнопку и присвойте значение:

procedure TForm1.Button1Click(Sender: TObject);
begin
ShowDesktop(true);
end;

{Скрыть иконки на рабочем столе}
ShowDesktop(False);
{Показать иконки на рабочем столе}
ShowDesktop(true);


 
DENNIS ©   (2004-01-26 22:15) [6]

Огромное  спасибо!!!
А как быть с Win (кнопкой), и вообще можно ее перехватить раньше Винды. Ведь она должна иметь код, как и остальные.


 
Almaz ©   (2004-01-27 00:59) [7]


> А как быть с Win (кнопкой), и вообще можно ее перехватить
> раньше Винды. Ведь она должна иметь код, как и остальные.


Попробуйте так:

Wnd := FindWindowEx(FindWindow("Shell_TrayWnd", nil), 0, "Button", nil);
SetWindowLong(Wnd, GWL_ID, -1);

Тестировалось для Win2k/XP - но скорее всего сработает и в Win98

Удачи.



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

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

Наверх




Память: 0.49 MB
Время: 0.056 c
1-1079638876
Atomik
2004-03-18 22:41
2004.04.04
Строчки разного цвета.


11-1058185200
Sagrer
2003-07-14 16:20
2004.04.04
Проблема с размером окна в XP.


1-1079122076
ZaKaZ
2004-03-12 23:07
2004.04.04
TMemo не грузит весь файл...


7-1068341691
Xenon
2003-11-09 04:34
2004.04.04
Мониторинг файловых операций


7-1073914819
Sergant
2004-01-12 16:40
2004.04.04
Прямая работа с портами