Any chance an ATL free version of the SDK could be released? ATL is excluded from VC++ Express, so I can't build any plugins.
Develop games in your browser. Powerful, performant & highly capable.
I'll see what I can do when I have time. I think it's just CString it uses, and the interface between Construct and the SDK ought to all be const char*s, so it might be possible to remove it already. You could also give dreamspark.com a go if you're a student.
I'm homeschooled, so I'm not sure what kind of hoops I'd have to jump through to get a Dreamspark account.
Anyways, I commented out the ATL includes, but when I try to build the plugin the compiler comes up with about 50 errors in Quadrilateral.hpp.
What errors? You might need definitions for POINTF and RECTF, which are trivial (float versions of the POINT and RECT structs).
Since there were apparently 111 errors( ), I just uploaded the build log.
Yeah, all the errors relate to p1, p2, p3 and p4, which are POINTFs, which is an undefined type. Try throwing in
struct POINTF {
float x, y;
};
somewhere, and it should fix those errors.
That indeed fixed those problems, so now I just get a bunch of errors related to CString and related nonsense.
I don't have much time to investigate properly these days. I'll take a look when I can, but you might be able to fix it on your own or with another developer. CString is basically an MFC version of std::string, it has a const char* overload instead of a c_str() function so you can pass it directly to parameters requiring a const char*. You could try replacing all CStrings in the SDK with std::strings, or directly manipulating const char*s.
I got around it by using Joe O'Leary's CStdString wrapper.
Everything compiles fine now with the exception of afxres. I don't know how I am supposed to get around it.
Any idea?
Any way to get around AFXRES?
I'm just one step away from having ATL-free Plugin SDK.
Thanks
What's wrong about afxres? What is it? Is it a missing include? What compiler errors do you get?
I think the SDK depends on resources, and IIRC, the Express editions don't include a resource editor. That might be tricky.
Yes, it's a missing include and yes Express editions do not include a resource editor.
Yes, the SDK does and will for at least the lifetime of 1.0 require resources I'd imagine - unless there's a clever solution here.
Does Express compile resources at all, or can you just not edit them through an editor? If it's the former, you should be able to do it by hand, and it could work out OK.