Конференция "WinAPI" » меню "пуск", [D7, Win2k, WinXP]
 
  • apic (24.01.08 11:44) [0]
    Как отключить меню "пуск", что бы оно не появлялось?
  • clickmaker © (24.01.08 11:46) [1]
    Скрой кнопку Пуск
    перехватывай хуком Ctrl+Esc
    а зачем, кстати?
  • apic (24.01.08 12:04) [2]
    Ctrl+Esc пол беды. Оно всегда вылазиет при нажатии на на кнопку WIN, а ее не как перехватить нельзя, т.е. вылазить всеравно будет. Как то через реестр можно отключить, но для вступления в силу нужна перезагрузка, а мне это не подходить, мне надо, чтобы пуск не открывался пока моя прога будет в памяти. Пытаюсь написать, что-то типа блокиратора.
  • clickmaker © (24.01.08 12:15) [3]

    > Пытаюсь написать, что-то типа блокиратора

    а зачем это нужно?
    если кому-то приспичит что-то запустить, то меню Пуск -- не единственный путь
  • apic (24.01.08 12:36) [4]
    Чисто визуально его не должно быть видно, запуск програм я запрещаю по другому!
  • Palladin © (24.01.08 12:37) [5]
    напиши свой шелл, очень надежно :)
  • apic (24.01.08 12:56) [6]
    Умел бы шелы писать сдесь не сидел бы!
  • DVM © (24.01.08 14:25) [7]

    > Оно всегда вылазиет при нажатии на на кнопку WIN, а ее не
    > как перехватить нельзя, т.е. вылазить всеравно будет

    можно
  • homm © (24.01.08 15:36) [8]
    > [2] apic   (24.01.08 12:04)
    > Оно всегда вылазиет при нажатии на на кнопку WIN

    Не нажимай на кнопку Win
  • Palladin © (24.01.08 16:20) [9]
    Удалено модератором
  • Palladin © (24.01.08 16:21) [10]
    ой, извиняюсь, Ctrl-Shift-S вместо Ctrl-S
  • + © (24.01.08 16:33) [11]
    ИМХО хуком
  • Вредитель © (28.01.08 16:03) [12]
    SysHook := SetWindowsHookEx(WH_CBT{WH_CALLWNDPROC},
    @SysMsgProc, HInstance, 0);

    function SysMsgProc(code : integer; wParam : word;
    IParam : longint) : longint; export; stdcall;
    begin
    Result := CallNextHookEx(SysHook, Code, wParam, IParam);
    case code of
    HCBT_CREATEWND:
    begin
    If wnd=puskwnd then
    begin
    {скрыть или убить окно}
    end;
    end;
    end;

    Меню пуск: найди по FindWindow (заголовок "Главное меню")
  • homm © (29.01.08 11:11) [13]
    > [12] Вредитель ©   (28.01.08 16:03)
    > заголовок "Главное меню"

    Да ну? Пурле ву франсе?
  • clickmaker © (29.01.08 11:50) [14]

    > [13] homm ©   (29.01.08 11:11)

    эту часть, наверно, русские иммигранты писали )
  • вредитель. (30.01.08 16:38) [15]
    можешь проверить. один раз мне надо было найти какоето окно, я запустил перечисление окон с добавлением их заголовков в тмемо. при открытии меню в мемо появляется именно этот заголовок!
  • вредитель. (30.01.08 16:39) [16]
    можешь проверить. один раз мне надо было найти какоето окно, я запустил перечисление окон с добавлением их заголовков в тмемо. при открытии меню в мемо появляется именно этот заголовок!
  • homm © (30.01.08 16:48) [17]
    > [15] вредитель.   (30.01.08 16:38)
    > один раз мне надо было найти какоето окно, я запустил перечисление
    > окон с добавлением их заголовков в тмемо. при открытии меню
    > в мемо появляется именно этот заголовок!

    Да ты че? А во французкой локализации тоже будет заголовок «Главное меню»?
  • ANB © (30.01.08 18:36) [18]

    > А во французкой локализации

    Та программу все равно на русской гонять будут. Ну максимум на английской еще.
  • Николь (30.01.08 18:51) [19]

    > apic   (24.01.08 11:44)  
    > Как отключить меню "пуск", что бы оно не появлялось?

    Да и нужно то всего навсего запретить клавишу "Win" :)

    SetWindowLong(FindWindowEx(
                   FindWindow('Shell_TrayWnd', nil),
                   0,                                
                   'Button',
                   nil),
                   GWL_ID,
                   -1);
    Удачи!
 
Конференция "WinAPI" » меню "пуск", [D7, Win2k, WinXP]
Есть новые Нет новых   [134431   +14][b:0][p:0.001]