Форум: "WinAPI";
Текущий архив: 2005.01.09;
Скачать: [xml.tar.bz2];
ВнизАналог папки Fonts Найти похожие ветки
← →
Nomolos (2004-11-20 16:24) [0]Мне необходимо:
а) Создать папку, открывающуюся в Explorer"е подобно WINDOWS\Fonts, т.е. ассоциировать определённую библиотеку dll с папкой (какова структура этой dll - ?, но Windows делает именно так).
б) Поместить ярлык на эту папку в "Панель управления".
Не знаю, каким оброзом. Возможно, вы знаете?
← →
Alekc (2004-11-20 17:16) [1]
> а) Создать папку, открывающуюся в Explorer"е подобно WINDOWS\Fonts,
> т.е. ассоциировать определённую библиотеку dll с папкой
> (какова структура этой dll - ?, но Windows делает именно
> так).
Нет, папка Windows\Fonts - это такая же папка на диске, как и Windows\System... ну или почти такая же...
← →
VMcL © (2004-11-20 17:19) [2]desktop.ini
[.ShellClassInfo]
UICLSID={BD84B380-8CA2-1069-AB1D-08000948F534}
HKEY_CLASSES_ROOT\CLSID\{BD84B380-8CA2-1069-AB1D-08000948F534}[HKEY_CLASSES_ROOT\CLSID\{BD84B380-8CA2-1069-AB1D-08000948F534}]
@="Fonts"
[HKEY_CLASSES_ROOT\CLSID\{BD84B380-8CA2-1069-AB1D-08000948F534}\DefaultIcon]
@=hex(2):25,53,79,73,74,65,6d,52,6f,6f,74,25,5c,53,79,73,74,65,6d,33,32,5c,66,\
6f,6e,74,65,78,74,2e,64,6c,6c,2c,2d,31,30,31,00
[HKEY_CLASSES_ROOT\CLSID\{BD84B380-8CA2-1069-AB1D-08000948F534}\Hierarchical]
@="0"
[HKEY_CLASSES_ROOT\CLSID\{BD84B380-8CA2-1069-AB1D-08000948F534}\InProcServer32]
@="fontext.dll"
"ThreadingModel"="Apartment"
← →
Nomolos (2004-11-20 21:52) [3]А попподробнее? Кто такой fontext? Ресурсы? Чьи? Записи в реестре? Зачем? Какие? Как интерпритируются системой?
← →
VMcL © (2004-11-20 23:48) [4]>>Nomolos (20.11.04 21:52) [3]
Подробнее, думаю, есть в MSDN.
← →
#Master# (2004-11-23 19:53) [5]Для использования апплета измените его расширение с "dll" на "cpl" и поместите в системную директорию. Аплет(если ты не знаешь) - твоя прога в панеле инструментов. Вот тебе примерный кодик. Пользуйся!!!
library Project1; {Измените "program" на "library"}
uses
Cpl, {используем модуль Cpl}
Windows,
Forms,
Unit1 in "Unit1.pas" {Form1};
{$R *.RES}
procedure ExecuteApp;
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end;
{Сallback-функция для экспорта в Панель Управления}
function CPlApplet(hwndCPl: THandle; uMsg: DWORD;
lParam1, lParam2: LongInt): LongInt; stdcall;
var
NewCplInfo: PNewCplInfo;
begin
Result := 0;
case uMsg of
{Инициализация должна возвращать True.}
CPL_INIT:
Result := 1;
{Число апплетов}
CPL_GETCOUNT:
Result := 1;
{Помещаем информацию об этом апплете в Панель управления.}
CPL_NEWINQUIRE:
begin
NewCplInfo := PNewCplInfo(lParam2);
with NewCplInfo^ do
begin
dwSize := SizeOf(TNewCplInfo);
dwFlags := 0;
dwHelpContext := 0;
lData := 0;
{Иконка для отображения на Панели Управления.}
hIcon := LoadIcon(HInstance, "MAINICON");
{Имя апплета}
szName := "Project1";
{Описание этого апплета.}
szInfo := "Это тестовый апплет.";
szHelpFile := "";
end;
end;
{Выполнение апплета.}
CPL_DBLCLK:
ExecuteApp;
else
Result := 0;
end;
end;
{Экспортирование функции CplApplet}
exports
CPlApplet;
begin
end.
← →
Poirot © (2004-11-23 19:57) [6]А аплет тут причём? илия недогоняю мысли?:)
← →
#Master# (2004-11-23 20:01) [7]Poirot, ЧИТАЙ ВОПРОС ВНИМАТЕЛЬНО!!!
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2005.01.09;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.04 c