Своя прога в попупменю винды

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by Sin3v_, 30 Dec 2008.

  1. Sin3v_

    Sin3v_ New Member

    Joined:
    24 Dec 2008
    Messages:
    6
    Likes Received:
    4
    Reputations:
    0
    Ну вот короч нужно с помошью делфи установить в винду чтобы при нажатии правой кнопки там была моя прога, например у каспера Проверить на вирусы написано вот скрин:
    [​IMG]

    Может это в реестре записано скажите директорию)
     
    1 person likes this.
  2. LEE_ROY

    LEE_ROY Elder - Старейшина

    Joined:
    9 Nov 2006
    Messages:
    450
    Likes Received:
    188
    Reputations:
    26
    гугли в сторону Com обьектов.
     
  3. Sin3v_

    Sin3v_ New Member

    Joined:
    24 Dec 2008
    Messages:
    6
    Likes Received:
    4
    Reputations:
    0
    ненаходится
     
    2 people like this.
  4. LEE_ROY

    LEE_ROY Elder - Старейшина

    Joined:
    9 Nov 2006
    Messages:
    450
    Likes Received:
    188
    Reputations:
    26
    google : Delphi ShellExtension
    создается ком обьект, регистрируеться через regsvr32 и обрабатывает события.
     
    1 person likes this.
  5. aka PSIH

    aka PSIH Elder - Старейшина

    Joined:
    7 Feb 2006
    Messages:
    543
    Likes Received:
    274
    Reputations:
    51
    Sin3v_
    вроде тут...
    HKEY_CLASSES_ROOT\*\ shellex\ContextMenuHandlers
     
    2 people like this.
  6. Sin3v_

    Sin3v_ New Member

    Joined:
    24 Dec 2008
    Messages:
    6
    Likes Received:
    4
    Reputations:
    0
    А че там за значении типо этого {C5622C16-B7D6-4C09-AF5B-82D0BD08577C},
    как мне свою прогу записать?
     
  7. Martyr

    Martyr Elder - Старейшина

    Joined:
    29 Jun 2008
    Messages:
    33
    Likes Received:
    7
    Reputations:
    0
    Чтобы написать такую прогу нужно создать СОМ-объект,который будет реализован в виде дллки,в основе которой лежат два интерфейса:IShellExtinit,lContextMenu.Еще нужно будет создать обработчик,его можно инициализировать с помощью IShellExtinit у которого есть метод Initialize.Еще нужно будет обработать методы интерфейса.
    Ну и чтобы зарегистрировать объект нужно создать такие значения в реестре:
    1.HKEY_CLASSES_ROOT\CLSID\(xzxzxzxz)-регистрирует СОМ-сервер.
    2.HKEY_CLASSES_ROOT\*\shellex\ContextMenuhandlers\ContMenu\CLSID(вместо цлсид твой номер).Эта запись указывает тип вызываемых файлов.
    3.HKEY_LOCAL_MACHINE_\Software\Microsoft\Windows\CurrentVersion\Shell Extensions Approved-это значение разрешает использовать дллку,загружать ее в память.
    Короче,кури мануал по СОМ-объектах и лови исходник _http://www.rapidshare.ru/875374