Форум: "Система";
Текущий архив: 2002.07.22;
Скачать: [xml.tar.bz2];
ВнизДобавить к контекстное меню ярлык Найти похожие ветки
← →
Doom (2002-04-28 22:47) [0]Необходимо добавить в контекстное меню, которое вызывается при клике на файл, ярлык своей программы. Необходимо, чтобы этот ярлык появился на вкладке "Отправить"
Буду благодарен за совет
← →
Doom (2002-04-29 18:41) [1]как добавить на рабочий стол- нашел.
а как в ЭТО САМОЕ контекстное меню?
← →
Vovchik (2002-04-29 18:50) [2]В поставке дельфи есть пример написания OLE-сервера, который добавляет пункт во всплывающее меню и обслуживает щелчёк по нему (компилирует проект без запуска дельфи).
← →
Anatoly Podgoretsky (2002-04-29 18:50) [3]"Рабочий стол" ничем не отличается от "Отправить" и то и другое папки внутри папки Windows
← →
Vovchik (2002-04-29 18:54) [4]> Anatoly Podgoretsky © (29.04.02 18:50)
Возьмите свои слова назад. В 2К/ХР - это совсем не так. Нужно юзать SHGetSpecialFolderLocation для того, чтобы узнать где она есть.
← →
Anatoly Podgoretsky (2002-04-29 19:06) [5]Vovchik © (29.04.02 18:54)
Насчет местонахождения? беру назад, то же и для Win9x
Насчет одно и тоже? Разве в XP иначе, не папка и ярлык в ней?
Насчет того что использовать SHGetSpecialFolderLocation - сам буду настаивать :-)
← →
Vovchik (2002-04-29 19:22) [6]> Anatoly Podgoretsky ©
ОК! Договорились.
Только если я правильно понял, человек хотел добавлять пункт в контекстное меню. Или я не так понял? А при чём тут ярлык?
Кстати, вопросы с ярлыками возникают так часто, что давно пора кому-нибудь из великих наколбасить прогу, в которой было бы показано как надо. И заодно с COM немного познакомить людей.
← →
Anatoly Podgoretsky (2002-04-29 19:44) [7]Эта папка особая, достаточно в ней разместить ярлык, что бы в пункте "Отправить" появился новый пункт меню. Я ее широко пользуюсь.
Давно пора поместить в FAQ с примером через интерфейсы, а может там и есть уже пример.
Вообще примеров в инете разбросано много, как правило или пример от Борланда или пример из статьи Федорова, у меня они тоже есть, но я не в праве их помещать в FAQ бех согласия авторов.
← →
Vovchik (2002-04-29 20:02) [8]Да что огород городить? Наколбасить такой пример - это исключительно дело времени, никаких принципиальных проблем нет!
Только я никак не могу понять по поводу пункта "Отправить". Я так понял, что надо чтобы при нажатии правой кнопкой на неком файле вылазило стандартное меню, в котором был бы некий наш пункт, сопоставленный с расширением файла.
← →
Anatoly Podgoretsky (2002-04-29 20:22) [9]Нет этот пункт меню не зависит от расширения, требование одно что бы это был файл или каталог. То есть система знает про эту особую папку, туда проще добавлять из среды ручками, не того эта класа папка, конечно для некоторых программ можно добавлять и программно.
← →
Doom (2002-04-29 21:17) [10]Может есть способ не используя SHGetSpecialFolderLocation определить местонахождение этой папки, в которую надо ярлык помещать?
← →
Anatoly Podgoretsky (2002-04-29 21:21) [11]Способ конечно есть, но гарантии то нет, местонахождение и название зависит от многих факторов. Через интерфейс просто и надежно.
← →
Vovchik (2002-04-29 21:40) [12]> Anatoly Podgoretsky © (29.04.02 21:21)
Да, это точно.
> Doom © (29.04.02 21:17)
А ты чё, боишься что-ли эту SHGetSpecialFolderLocation? Ничего в ней страшного нету!
Но некоторые из этих папок прописаны в реестре просто и цинично.
← →
Doom (2002-04-29 21:42) [13]Спасибо, разобрался.
Тему можно считать закрытой.
[Now Supported on Windows NT]
Retrieves the location of a special folder.
WINSHELLAPI HRESULT WINAPI SHGetSpecialFolderLocation(;
HWND hwndOwner,
int nFolder,
LPITEMIDLIST *ppidl
);
Parameters
hwndOwner
Handle of the owner window that the client should specify if it displays a dialog box or message box.
nFolder
Value specifying the folder to retrieve the location of. This parameter can be one of the following values:
CSIDL_BITBUCKET Recycle bin
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2002.07.22;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.005 c