![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
XPManifest для DLL ...
TUserClass © (2008-06-17 10:57:00)О ужас - перепробовал абсолютно все ... Не хочет XPManifest у мну работать ... и создавал динамически и пробовал подключать xml с помощью brcc32.exe ( {$R XP.res} ) - ничего не работает ((((
Кто-нить уже делал поддержку ХП тем для dll? Отзовитесь ...
TUserClass (2008-06-17 16:19:00) [1]
> Rouse_ © (17.06.08 15:47) [10]
ОК....чуть позже гляну ... уже скачал, но пока толком не разобрался :) спасибо ...
Rouse_ (2008-06-17 15:47:00) [2]Да все правильно. Ты должен подключить манифест для своей библиотеки. Т.к. в моем примере это был PropertySheet я использовал ISOLATIONAWARE_MANIFEST_RESOURCE_ID. У себя поэксперементируй. Должен быть либо он, либо ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID. После чего его нужно активировать при помощи ActivateActCtx(), иначе контролы останутся в старом стиле.
Пример найдешь по моей ссылке - реализация в модуле ActivationCotext.pas
Rouse_ (2008-06-17 12:45:00) [3]
> TUserClass (17.06.08 12:27) [7]
>
> т.е.
>
>
> ....
> ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID RT_MANIFEST
> "windowsxp.manifest"
Да, или так или ISOLATIONAWARE_MANIFEST_RESOURCE_ID. Точно не помню, посмотри как в этом примере я делал: http://rouse.drkb.ru/winapi.php#propsheet
TUserClass (2008-06-17 12:38:00) [4]эх....не работает ... ((
TUserClass (2008-06-17 12:27:00) [5]т.е.
....
ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID RT_MANIFEST
"windowsxp.manifest"
TUserClass (2008-06-17 12:22:00) [6]
> Rouse_ © (17.06.08 12:09) [5]
т.е. в xpmanifest.rc должно быть так ???
#define RT_MANIFEST 24
#define CREATEPROCESS_MANIFEST_RESOURCE_ID 1
#define ISOLATIONAWARE_MANIFEST_RESOURCE_ID 2
#define ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID 3
#define CONTROL_PANEL_RESOURCE_ID 123
CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST
"windowsxp.manifest"
потом компилю в brcc32, и подключаю в dll {$R windowsxp.RES} и все ????
Rouse_ (2008-06-17 12:09:00) [7]Для тулбаров код манифеста не CREATEPROCESS_MANIFEST_RESOURCE_ID а
ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID.
Вот дефайны:
// Необходимые константы {смотри MSDN}
#define RT_MANIFEST 24
#define CREATEPROCESS_MANIFEST_RESOURCE_ID 1
#define ISOLATIONAWARE_MANIFEST_RESOURCE_ID 2
#define ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID 3
#define CONTROL_PANEL_RESOURCE_ID 123
TUserClass (2008-06-17 11:17:00) [8]
> Игорь Шевченко © (17.06.08 11:13) [3]
Прекрасный ответ... :) - а КАК ???
Игорь Шевченко (2008-06-17 11:13:00) [9]
> Вот куда мне пихать {$R XP.res}?
в MSIE
TUserClass (2008-06-17 11:12:00) [10]Вот у меня тулбар для MSIE ... Вот куда мне пихать {$R XP.res}?
У меня в dll вот так....а толку нету:
library SomeToolBar;
uses
ComServ, Forms,
SomeIEToolBar_TLB in 'SomeIEToolBar_TLB.pas',
Unit1 in 'Unit1.pas' {SomeIEBar: CoClass};
exports
DllGetClassObject, DllCanUnloadNow, DllRegisterServer, DllUnregisterServer;
{$R xp.res}
{$R *.TLB}
{$R *.RES}
begin
end.
Поросенок Винни-Пух (2008-06-17 11:07:00) [11]это должно быть в хост приложении а не в длл