Having said that, I've found that ordering headers generally gets me around the problems (e.g. putting your include below as the first include works for me in the DLL scenario with vc6.0). The following works for me (or at least compiles :>.)
// test.cpp : Defines the entry point for the DLL application. //
#include <xsec/utils/XSECPlatformUtils.hpp>
#include "stdafx.h"
BOOL APIENTRY DllMain( HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
return TRUE;
}Cheers,
BerinMilan Tomic wrote:
Thank you, Scott, for your response, but _AFXDLL didn't solved my problem.
Berin, I really think we should change XSECDefs.hpp. I belive it should include <windows.h> instead of <afx.h>, like Xerces and Xalan does. Otherwise, any usage of XSEC in non-MFC projects (like Win32 DLL) results in this error:
c:\program files\microsoft visual studio\vc98\mfc\include\afxv_w32.h(14) : fatal error C1189: #error : WINDOWS.H already included. MFC apps must not #include <windows.h>
This error could be reproduced by creating Win32 DLL project and adding this line into main .cpp file (containing DllMain()):
#include <xsec/utils/XSECPlatformUtils.hpp>
Best regards, Milan
-----Original Message-----
From: Scott Cantor [mailto:[EMAIL PROTECTED] Sent: Tuesday, June 08, 2004 3:42 PM
To: [EMAIL PROTECTED]
Subject: RE: I give up :>
It includes afx.h, and afx.h includes MFC. Release configuration
builds, but Debug fails. I couldn't find a way to build
it and I've
tried everything (include MFC, use different run-times...).
Try defining _AFXDLL in the project settings. I've always had to do that to get my Debug builds to work.
-- Scott
