2011-02-23 9 views
8

Necesito crear una DLL de Windows que exporta funciones y tiene una interfaz gráfica de usuario. El motivo de la GUI en el archivo DLL es que el archivo DLL sirve como un tipo de complemento para otra aplicación de terceros. Actualmente, solo tengo acceso a Visual Studio Express, que AFAIK no admite MFC, así que estoy buscando formas alternativas de crear una GUI en una DLL. Después de algunas investigaciones encontré Qt que parece prometedor. Y parece que podría ser más fácil usar el IDE de Qt Creator en lugar de Visual Studio Express.Qt: ¿Cómo crear DLL de Windows (que exporta funciones)?

Sin embargo, ¿cómo creo una DLL de Windows en Qt Creator? (Supongo que una DLL normal, no creo que funcione una DLL administrada o COM)

ACTUALIZACIÓN: ¡Esto funciona! Después de saltar a través de varios aros, dos claves importantes fueron para agregar

#include <windows.h> 

Y a continuación, utilizar la herramienta Qt/MFC Marco de Migración (en la actualidad oficialmente disponible en: http://qt.gitorious.org/qt-solutions/qt-solutions/trees/master/qtwinmigrate EDIT: Creo que este es el nuevo enlace: https://github.com/qtproject/qt-solutions/tree/master/qtwinmigrate)

he utilizado este ejemplo para que me va:

http://doc.qt.nokia.com/solutions/4/qtwinmigrate/winmigrate-qt-dll-example.html

EDIT: Creo que este es el nuevo enlace http://htmlpreview.github.io/?https://github.com/qtproject/qt-solutions/blob/master/qtwinmigrate/doc/html/winmigrate-qt-dll-example.html

+1

Vaya, sí, tienes razón, Express no admite MFC o ATL - No sabía que en realidad. Aquí hay una comparación de las Ediciones de Visual Studio C++: http://msdn.microsoft.com/library/hs24szh9.aspx – RobS

+2

@RobS Nada debería ser compatible con la mierda de MFC :) –

Respuesta

11

Agregue la línea folowing al archivo .pro: TEMPLATE = lib

eso es casi todo lo que tiene que hacer para tener QtCreator hacer que su 'aplicación' en una dll.

verificación
Cuestiones relacionadas