1>У меня есть Property Page Shell Extension, беда с ним в том что под XP оно показывается в старом стиле, манифест подключать пробовал — это непомгло (что и неудивительно — это же dll).Как включить поддержку тем XP в shell extension ?

KSA>Тут как раз об этом


1>Господа, то что по этому поводу написанно у майкросовт явно недостаточно, если кто-то делал ShellExtension нормально работающие под WinXP не на MFC, и понял что к чему, объясните пожалуйста, или примерчик поместите pls.


На самом деле достаточно, как я уже говорил. Итак, что нужно сделать:

1. Создать файл манифеста такого вида:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
    version="1.0.0.0"
    processorArchitecture="X86"
    name="YourAppName"
    type="win32"
/>
<description>Your application description here.</description>
<dependency>
    <dependentAssembly>
        <assemblyIdentity
            type="win32"
            name="Microsoft.Windows.Common-Controls"
            version="6.0.0.0"
            processorArchitecture="X86"
            publicKeyToken="6595b64144ccf1df"
            language="*"
        />
    </dependentAssembly>
</dependency>
</assembly>


2. Добавить в файл ресурсов строку вида:

ISOLATIONAWARE_MANIFEST_RESOURCE_ID RT_MANIFEST "YourAppName.manifest"


3. В stdafx.h (или в любом месте перед windows.h) определить макрос:

#define ISOLATION_AWARE_ENABLED 1


Все...проверено — работает.

ЗЫ:
Заметь, ничего большего, чем написано в MSDN я не сказал.
Автор: KaSA    Оценить