Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.027 c
1-1079021304
opoloxai
2004-03-11 19:08
2004.04.04
Типизированный поток.


14-1078413442
Gero
2004-03-04 18:17
2004.04.04
Окно просмотра Opera


7-1074583097
LexusU
2004-01-20 10:18
2004.04.04
Драйвер под NT(2000,XP) для доступа к CMOS


3-1078230822
sergt
2004-03-02 15:33
2004.04.04
Выгрузка результата запроса в переменную


1-1079433269
Rem
2004-03-16 13:34
2004.04.04
Русские шрифты в Formula One Ver. 3.0.4




   Наверх