Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.09.02;
Скачать: [xml.tar.bz2];

Вниз

Как прочитать описание .CPL файла?   Найти похожие ветки 

 
-= Like =-   (2002-08-19 15:20) [0]

Добрый день. Когда в Панели управления щелкаешь мышью по значкам CPL файлов, то в левой стороне Проводника появляеться описание .CPL файла (естественно, когда включен режим просмотра "Как веб-страница"). Как прочитать это описание, где оно храниться?


 
Cobalt   (2002-08-19 16:30) [1]

Это хранится в ресурсе версии. Можно прочитать еще так: св-ва файла - вкладка "Версия". В свою CPL можно добавить, см. меню Дельфей "Информация о проекте"


 
-= Like =-   (2002-08-19 16:49) [2]

Нет, неправильно!

Посмотри свойства файла Modem.cpl. Там написано "Настройка модема". А теперь зайди в Панель управления и щелкни разок по значку "Модемы", слева появиться описание: "Установка нового модема и изменение его параметров". Вот что мне нужно!


 
-= Like =-   (2002-08-19 18:36) [3]

Не верю, что никто не знает!!!!!!!!!!!!!!!!


 
Ученик   (2002-08-19 18:42) [4]

В Delphi 6.0 это свойство TAppletModule.Help


 
-= Like =-   (2002-08-19 18:44) [5]

Мне нужно прочитать описание чужого CPL файла.

TAppletModule.Help в любом случае мне не подходит.


 
Ученик   (2002-08-19 18:46) [6]

По-моему оно внутри, и это ответ на запрос


 
VSergeySPB   (2002-08-19 20:00) [7]

За вывод подсказок в винде отвечает интерфейс InfoTip(IInfoTip).
В этом направлении и надо копать. Где-то я видел по этому поводу статью. Вроде бы на rsdn.ru.


 
TTCustomDelphiMaster   (2002-08-19 21:08) [8]

смотри CPlApplet, NEWCPLINFO, CPLINFO


 
-= Like =-   (2002-08-19 21:43) [9]

NEWCPLINFO, CPLINFO

Если не ошибаюсь какой-то из них хранит описание CPL файла. Сейчас по рукой инфы нет.

А как можно программно прочитать это описание CPL файла?
Пример не помешает.


 
-=Like=-   (2002-08-20 12:52) [10]

Не знаем?

И Вы называете себя "Мастерами"???


 
TTCustomDelphiMaster   (2002-08-20 21:05) [11]


> -=Like=- (20.08.02 12:52)
> Не знаем?


Знаем, знаем. Только времени нет отвечать. Вот выкроил время написал функцию. С ней еще нужно поэкспериментировать - проверить на разных OS (я проверял на XP). Ну этим ты уж сам займись.

...
uses ..., cpl;

type
...

TCplApplet = function(hwndCPl: THandle; uMsg: DWORD; lParam1: longint; lParam2: longint): Longint; stdcall;

...

implementation

...
//Получение описания Cpl
function GetCplInfo(CplPath: string): string;
var
hLib: THandle;
CplCall: TCplApplet;
CplInfW: TNewCplInfoW;
CplInfA: TNewCplInfoA;
CplInf: TCplInfo;
begin
Result :="Info not found";
hLib := LoadLibrary(PChar(CplPath));
if hLib<>0 then
try
CplCall := GetProcAddress(hLib,"CPlApplet");
if @CplCall<>nil then
try
CplCall(0, CPL_INIT, 0, 0);
CplInfA.dwSize := 0;
CplInfA.dwFlags := 0;
CplCall(0, CPL_NEWINQUIRE, 0, LongInt(@CplInfA));
if CplInfA.dwSize = sizeof(TNewCplInfoA) then
Result := CplInfA.szInfo
else
begin
CplInfW.dwSize := 0;
CplInfW.dwFlags := 0;
CplCall(0, CPL_NEWINQUIRE, 0, LongInt(@CplInfW));
if CplInfW.dwSize = sizeof(TNewCplInfoW) then
Result := WideCharToString(CplInfW.szInfo)
else
begin
CplCall(0, CPL_INQUIRE, 0, LongInt(@CplInf));
LoadStringA(hLib, CplInf.idInfo, CplInfA.szInfo, 32);
Result := CplInfA.szInfo;
end;
end;
finally
CplCall(0, CPL_EXIT, 0, 0);
end;
finally
FreeLibrary(hLib);
end;
end;

//Вызов функции
procedure TForm1.Button2Click(Sender: TObject);
begin
ShowMessage(GetCplInfo("Desk.cpl"));
end;
...


 
~Rand~   (2002-08-20 21:32) [12]

может в ресурсах .cpl файла



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.09.02;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.011 c
1-3369
c0pyc@t
2002-08-22 09:24
2002.09.02
Передача строки в ДЛЛ


1-3458
Дельфятник
2002-08-20 11:28
2002.09.02
Рисование на TRadioGroup через его Handle.


3-3240
michael_b
2002-08-12 08:14
2002.09.02
поля типа char


1-3347
Cr@sh
2002-08-19 12:31
2002.09.02
Устранение мерцаний Image.


3-3293
Serj27
2002-08-12 11:14
2002.09.02
doa+delphi





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский