Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2004.04.04;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.035 c
14-1078927349
MPS
2004-03-10 17:02
2004.04.04
Как просто вывести текст на печать в Си++?


14-1078682617
peypivo
2004-03-07 21:03
2004.04.04
как у нас на работу принимали


1-1079079215
ЕвгенийТ
2004-03-12 11:13
2004.04.04
запись текстового файла в DOS-кодировке


1-1077897634
Andrew
2004-02-27 19:00
2004.04.04
Сертификаты открытого ключа


4-1075466636
stepan_mk
2004-01-30 15:43
2004.04.04
Робота с DLL





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский