Bart
Bart

Reputation: 767

You must copy ATL files from an earlier version of BDS [$(BDS)\include\atl\*.*] to use ATL?

I'm working with embarcadero C++ XE8 32 bits. When I include the following files:

#include<ATLBASE.h>
#include<UTILCLS.h>
#include<opcda.h>
#include<DataCallBackSink.cpp>

I get the following error:

[bcc32 Fatal Error] atlbase.h(5): F1003 Error directive: You must copy ATL files from an earlier version of BDS [$(BDS)\include\atl\*.*] to use ATL

When I go to the file I will see the following text:

// CBuilderXE does not include ATL files as we were unable to secure a license
// For C++ ActiveX development you can now use the DAX (Delphi ActiveX) Framework
// Alternately, you may copy the ATL files from an earlier version of C++Builder
//   $(BDS)\include\atl\*.*   --->   $(BDS)\include\windows\sdk\atl
#error You must copy ATL files from an earlier version of BDS [$(BDS)\include\atl\*.*] to use ATL

I added the files directly to my program with a map named include\ATL*file name*

I thought, when I copy these files to the \windows\sdk\atl directory it would work, but it doesn't

So does anyone had this error before and if you solved it, how did you solve it?

Upvotes: 0

Views: 716

Answers (1)

GMunguia
GMunguia

Reputation: 81

As well as the include files, you need to copy a .lib file. You can download it from here.

If the problem persists, make sure the search paths in project options are correct.

Upvotes: 1

Related Questions