Модераторы: Poseidon, Snowy, bems, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Меню Пуск, Как отключить? 
:(
    Опции темы
Pavelbej
Дата 30.7.2006, 14:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



При удалении с рабочего стола иконок и панели задачь а также при отключении клавиш Win, Ctrl+Esc все 
равно можно вызвать меню кнопки Пуск двойным кликом (в любом месте). Возможно както вырубить это меню, чтобы не реагировала при двойном нажатии кнопки мыши? 
PM MAIL   Вверх
Romikgy
Дата 30.7.2006, 15:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 26
Всего: 146



поставь хук на мышь, а вообще кнопку пуск закрыть можно smile 


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
Albinos_x
Дата 30.7.2006, 15:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

Репутация: 26
Всего: 108



Код
...
// Скрывает (вариант 1)
procedure TForm1.Button1Click(Sender: TObject);
var Rgn:hRgn;
begin
Rgn:=CreateRectRgn(0,0,0,0);
SetWindowRgn(FindWindowEx(FindWindow('Shell_TrayWnd',nil),0,'Button',nil),Rgn,true);
end;

// Показывает (вариант 1)
procedure TForm1.Button2Click(Sender: TObject);
begin
SetWindowRgn(FindWindowEx(FindWindow('Shell_TrayWnd',nil),0,'Button',nil),0,true);
end;

// Скрывает (вариант2)
procedure TForm1.Button5Click(Sender: TObject);
begin
ShowWindow(GetWindow(FindWindow('Shell_TrayWnd',nil),GW_CHILD),SW_HIDE);
end;

// Показывает (вариант2)
procedure TForm1.Button6Click(Sender: TObject);
begin
ShowWindow(GetWindow(FindWindow('Shell_TrayWnd',nil),GW_CHILD),SW_NORMAL);
end;

// Делает недоступной
procedure TForm1.Button3Click(Sender: TObject);
begin
EnableWindow(FindWindowEx(FindWindow('Shell_TrayWnd',nil),0,'Button',nil),false);
end;

// Снова доступна
procedure TForm1.Button4Click(Sender: TObject);
begin
EnableWindow(FindWindowEx(FindWindow('Shell_TrayWnd',nil),0,'Button',nil),true);
end;

...


Клавиша Windows срабатывает во всех вариантах 


--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
Palladin
Дата 30.7.2006, 16:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 932
Регистрация: 15.5.2007
Где: Беларусь г.Гомель

Репутация: 3
Всего: 17



Просто сделай так чтобы при нажатии на кнопку Windows эта кнопка нажималась ещё раз(программно) тогда сразу же при открытии пуска он сразу же и закроется, пользователь этого даже не увидет!!!  


--------------------
Глуп тот кто полагается на истину авторитета, а не на авторитет истины
[color=red]KAV&KIS==Evil[/color]
PM MAIL   Вверх
Pavelbej
Дата 30.7.2006, 20:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Albinos_x,  я пробовал скрыть Пуск, отключить но меню все равно появлялось. Попробую твой код, может повезет.  

Это сообщение отредактировал(а) Pavelbej - 30.7.2006, 20:16
PM MAIL   Вверх
Girder
Дата 30.7.2006, 22:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лентяй 2
***


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

Репутация: 31
Всего: 155



Заморозь поток от него...

PS: Пример есть в арсенале. 


--------------------
Как слышим, так и пишим.
Истина где-то там...
PM   Вверх
Pavelbej
Дата 31.7.2006, 15:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Albinos_x,  Пуск прячется, отключается, но меню все равно появляется.

Girder,  
Цитата

Заморозь поток от него...


А как? Дай ссылку или пример.  
PM MAIL   Вверх
Yanis
Дата 1.8.2006, 15:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

Репутация: 72
Всего: 111



Код
SendMessage(FindWindowEx(FindWindow('Shell_TrayWnd',nil),0,'Button',nil), WM_CLOSE, 0, 0);



--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
Pavelbej
Дата 1.8.2006, 17:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Yanis,  вроде не реагирует, спасибо. А как вернуть все обратно? 
PM MAIL   Вверх
Alexeis
Дата 1.8.2006, 17:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Я бы сделал скорее так
Код

отключить
SendMessage(FindWindowEx(FindWindow('Shell_TrayWnd',nil),0,'Button',nil), WM_ENABLE, 0, 0);
включить
SendMessage(FindWindowEx(FindWindow('Shell_TrayWnd',nil),0,'Button',nil), WM_ENABLE, 1, 0);


Это сообщение отредактировал(а) alexeis1 - 1.8.2006, 17:41


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Pavelbej
Дата 1.8.2006, 18:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



alexeis1,  не могу пока что воспользоватся твоим кодом, так как у меня кнопка Пуск исчезла и обратно не знаю как вернуть.

Воспользовался кодом Yanis-а, 

Код

SendMessage(FindWindowEx(FindWindow('Shell_TrayWnd',nil),0,'Button',nil), WM_CLOSE, 0, 0);

PM MAIL   Вверх
Pavelbej
Дата 1.8.2006, 18:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



После перезагрузки ОС все пришло в норму. 
alexeis1,  твой код не сработал.
PM MAIL   Вверх
Alexeis
Дата 1.8.2006, 20:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Pavelbej, 
Я чуток подзабыл

так блокируется вся панель
Код

var
  StartBtnWnd : hWnd;

procedure TForm1.Button1Click(Sender: TObject);
begin
  StartBtnWnd := FindWindow('Shell_TrayWnd', nil);
  EnableWindow(StartBtnWnd, false);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  StartBtnWnd := FindWindow('Shell_TrayWnd', nil);
  EnableWindow(StartBtnWnd, true);
end;




--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Yanis
Дата 2.8.2006, 16:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

Репутация: 72
Всего: 111



Pavelbej
Всё равно перезапуск explorer.exe всё вернёт.
Код
  WinExec('taskkill /f /im explorer.exe', SW_HIDE);
  Sleep(1000);
  WinExec('explorer.exe', SW_SHOW);



--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
Pavelbej
Дата 2.8.2006, 16:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Yanis,  а это не может быть опасным? Что-то мне подсказывает что лучше не надо. 
Может двойной клик перезватить? Есть пример? Поможет?
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

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


 




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


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

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