MVV

|
Posted: Fri Jun 04, 2010 17:25 Post subject: |
|
|
Кстати, родилась еще одна идея, которая кому-то точно понравится.
Можно добавить команду LoadLibrary, которая будет загружать в память указанную библиотеку. Этого уже будет достаточно для того, чтобы появилась возможность писать плагины к плагину от такого плагина требуется лишь одна фукция DllMain, в которой он на DLL_PROCESS_ATTACH будет инициализировать и запускать себя, а на DLL_PROCESS_DETACH - финализировать. При загрузке такого плагина нужно лишь запомнить его дескриптор, чтобы при выгрузке Autorun выгрузить и плагин.
То есть, от твоего плагина требуется лишь объявить глобальный список дескрипторов (типа HMODULE) и при выполнении команды LoadLibrary вызывать функцию LoadLibrary для указанного имени файла, а результат помещать в список, если запуск успешен. При выгрузке плагина просто достаешь все элементы списка и вызываешь для них FreeLibrary. Элементарно.
Как первый пример плагина для плагина я вижу библиотечку, которая будет позволять отображать и скрывать в рантайме меню окна тотала, при этом еще и показывать это меню по хоткею (или кнопке панели инструментов). Идея родилась при обдумывании сокрытия меню в TCFS2 (из стороннего приложения обнулять дескриптор меню - не очень хорошая мысль). _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|