Upgrading the project to API 25
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
2021-07-21
07:42 PM
- last edited on
2021-09-14
09:26 AM
by
Noemi Balogh
The project originates from API 23 and I already have it upgraded to 24 by simply creating new build config and adjusting all the paths. I tried to do the same for API 25.
Also, I need to keep older versions for maintenance reasons.
The error I'm getting says:
Error C3668 'TE::FontFamily::GetClassInfo': method with override specifier 'override' did not override any base class methods ..\API Development Kit 25.3002\Support\Modules\TextEngine\FontFamily.hpp 42
These are the things I already rectified so far:
- added path to '../Modules/RS' headers and RSImp.lib (not sure if this is needed),
- removed references to utf8header.h which is no longer included with the SDK.
What do I do next?
Solved! Go to Solution.
- Labels:
-
Add-On (C++)
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
2021-09-02 11:42 PM
Hello,
In regards to Error C3668 'IO::Name::GetClassInfo': method with override specifier 'override' did not override any base class methods ...
1. It looks to be WinUser.h defining GetClassName as GetClassNameA/W so GS::Object::GetClassName -> gets defined as GS::Object::GetClassNameA or W.
2. So Location DECLARE_CLASS_INFO macro was trying to find a GS::Object::GetClassName to override but fails because of the above.
3. I fixed the those compile errors by moving the windows api headers i.e. <Windows.h> to be after Archicad headers.
- Ian Tran
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
2021-08-17 08:41 AM
API Development Kit 25.3002\Support\Modules\TextEngine\FontFamily.hpp(42,2): error C3668: 'TE::FontFamily::GetClassInfo': method with override specifier 'override' did not override any base class methods Addon Development\API Development Kit 25.3002\Support\Modules\InputOutput\Name.hpp(34,2): error C3668: 'IO::Name::GetClassInfo': method with override specifier 'override' did not override any base class methods API Development Kit 25.3002\Support\Modules\InputOutput\Address.hpp(67,2): error C3668: 'IO::Address::GetClassInfo': method with override specifier 'override' did not override any base class Addon Development\API Development Kit 25.3002\Support\Modules\InputOutput\RelativeLocation.hpp(38,2): error C3668: 'IO::RelativeLocation::GetClassInfo': method with override specifier 'override' did not override any base class methods API Development Kit 25.3002\Support\Modules\InputOutput\Location.hpp(52,2): error C3668: 'IO::Location::GetClassInfo': method with override specifier 'override' did not override any base class methods
The solution I found out for this is adding this define + include on the header file. Make sure this is first before other includes, doesn't work if its not
#define ACExtension // needed before ACAPinc.h #include "ACAPinc.h"
Hope this works for you too.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
2021-09-02 11:42 PM
Hello,
In regards to Error C3668 'IO::Name::GetClassInfo': method with override specifier 'override' did not override any base class methods ...
1. It looks to be WinUser.h defining GetClassName as GetClassNameA/W so GS::Object::GetClassName -> gets defined as GS::Object::GetClassNameA or W.
2. So Location DECLARE_CLASS_INFO macro was trying to find a GS::Object::GetClassName to override but fails because of the above.
3. I fixed the those compile errors by moving the windows api headers i.e. <Windows.h> to be after Archicad headers.
- Ian Tran
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
2021-09-30 06:21 PM
Sorry for the late reply, but indeed moving the headers fixed the problem.
Thanks!