2009-11-10 5 views
5

Tengo una solución VS 2005 que tiene numerosos proyectos (la mayoría son DLL, 1 EXE que es un proyecto CppUnit) y estoy tratando de agregar una DLL de fondo fija para el registrador Pantheios para que pueda usar una sola instancia de registrador en toda la solución. Siguiendo las indicaciones de las URLs siguientes:Cómo crear una DLL de fondo fijo para el registrador Pantheios

me parece que tienen una DLL de fondo fijo que soporta declaraciones básicas de registro Pantheios por ejemplo, log_DEBUG, log_ERROR etc. e incluso la API de seguimiento (http://www.pantheios.org/doc/html/group__group____tracing.html) p. PANTHEIOS_TRACE_NOTICE.

Pero estoy atascado en el futuro, porque requiere Pantheios "dispositivos de inserción" (una API para convertir tipos fundamentales de cadena) (http://www.pantheios.org/doc/html/group__group____application__layer__interface____inserters.html) para manejar, por ejemplo, int, double, float, etc. puntero

no lo hago saber cómo implementar estos "insertadores" en el DLL de fondo fijo que creé. Si simplemente les llamo de mis otras DLL entonces me da un error como este:

DLLApp.obj : error LNK2019: unresolved external symbol "public: __thiscall pantheios::integer::integer(int,int)" ([email protected]@@[email protected]@Z) referenced in function "public: void __thiscall DLLApp::DLLAppSetup(void)" ([email protected]@@QAEXXZ)

No estoy seguro de si puedo (y necesitan) exportar el "número entero" (y otra de inserción) Clase usando el .DEF como se menciona en el artículo de sourceforge.net O si hay algo más que me falta.

Cualquier ayuda sería muy apreciada. Gracias por adelantado.

+0

¿Es esta pregunta difícil de responder? ¿O no es un escenario común? ¿O quizás no se le preguntó correctamente? Comentarios/sugerencias bienvenidos. Gracias por adelantado. – ossandcad

+0

Tal vez sea demasiado fuera de lo común. ¿Has intentado hacer el proyecto Pantheios? – dcw

+0

He pedido el proyecto Pantheios en http://sourceforge.net/projects/pantheios/forums/forum/647484/topic/1639420 antes de publicar aquí. Matt (el autor) generalmente es muy bueno para publicar respuestas, pero no ha respondido a ninguno de los míos (todavía). Supongo que está fuera de los caminos trillados, aunque hubiera supuesto que usar un único registrador en varias DLL hubiera sido común. – ossandcad

Respuesta

1

En la página de propiedades del proyecto, cambie el conjunto de caracteres como "Usar juego de caracteres de múltiples bytes"

+0

¿Podría ampliar su respuesta? No estoy seguro de cómo cambiar el conjunto de caracteres permite cumplir con la dependencia 'entero'. También las versiones más nuevas de Pantheios admiten el conjunto de caracteres anchos (en VS case, Unicode o wchar_t). – ossandcad

+0

Haga clic derecho para proyectar, propiedades> propiedades de configuración> general> Conjunto de caracteres> Usar conjunto de caracteres de varios bytes –

+0

Debería disculparme. No quise preguntar '¿cómo cambiar el juego de caracteres?'. Quería preguntar '¿cómo ayuda?', Ya que la clase no menciona el tipo de carácter faltante. – ossandcad

Cuestiones relacionadas