Win32. Habilitar estilos visuales en dll

No tengo experiencia en C ++ y Win API, lo siento si esta pregunta es nooby. Tengo DLL donde creo algunos componentes,MessageBox por ejemplo. Agregué un comentario de pragma para habilitar los estilos visuales y no funciona (y no debería, como sé por esta respuesta:estilo de Windows 7 para el cuadro combinado en la barra de herramientas de Internet Explorer, ¿cómo?

Código Dll (omitir exportación, etc.):

#include "stdafx.h"
#include "my-dll.h"
#include <Windows.h>
#pragma comment(linker,"\"/manifestdependency:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*'    publicKeyToken='6595b64144ccf1df' language='*'\"")

MYDLL_API int fnmydll(void)
{
   MessageBox(NULL, L"Message", NULL, 0);
   return 42;
}

Luego invoco esta función dll desde mi aplicación:

#include <iostream>
#include <Windows.h>
#include "my-dll.h"

int WinMain(HINSTANCE hInstance,
                   HINSTANCE hPrevInstance,
                   LPSTR lpCmdLine,
                   int nCmdShow)
{
    fnmydll();
    return 0;
}

Y tengo mi cuadro de mensaje pero sin estilos visuales. Según tengo entendido, debo activar el contexto cuando se invoca mi dll pero MSDN no tiene ejemplos de cómo hacerlo. ¿Podría darme ese ejemplo o al menos explicar lo que está sucediendo con más detalles? Porque ni siquiera puedo entender por qué funcionanBOOL GetCurrentActCtx(_Out_ HANDLE *lphActCtx); recibe puntero aACTCTX pero tiene firma con algunaHANDLE tipo.

Respuestas a la pregunta(1)

Su respuesta a la pregunta