Sign in to follow this  
Buttacup

Configuring Folders and Files for Multi Project Solution VC++

Recommended Posts

I'm setting up plugins for my engine and I'm looking at this and thinking it's a bit messy?? I guess the first issue I'm having is with Exporting and Importing Members of a DLL. My second problem is configuring the project to accommodate the multi-project solution in both debug and release. My issues with Exporting/Importing revolve around the whole decoration issue. I would like to abstract the plugin system from the compiler used. MSDN says to drop name decoration use extern "C" but that as a consequence polymorphism is voided! I really don't want any of the situations presented. I don't see this as too much of a problem as I am exporting a few functions which have been inherited from a client interface(dynamic.) I will not be exporting data members and well a class is not technically exported just all of it's members, yus??? o-o As for the solution configuration the folders are all over the place and they will probably change as the project nears completion.... <=== ROFLMAO I'm not even quite sure if I understand how to debug a solution which contains multiple projects/DLLs?? As it stands I'm releasing the DLLs and putting them in the DLL folder which is located in the root solution folder named after the engine.. I see this Engine/DLL/plug.dll as appropriate as afterward I can simply change the root to the name of a game and clean build the whole solution.... ....as the project nears completion.... <=== ROFLMAO

Share this post


Link to post
Share on other sites
Quote:
Original post by Buttacup
Do I even need to load the inherited methods? Are they accessible once the pointer has been returned?


Would this work?

HRESULT RAMDAC::SetLayout(ID3D10Device1* pd3dDevice)
{
HRESULT hr = S_OK;;

IBuffer* Buffer;

HINSTANCE hdll = NULL;
typedef void (*pLoadBuffer)(IBuffer**);
pLoadBuffer LoadBuffer;

string Plug = PATH + string(DFX);
hdll = LoadLibrary(Plug.c_str());
LoadBuffer = (pLoadBuffer)(GetProcAddress( hdll, "LoadBuffer" ));
LoadBuffer(&Buffer);

Buffer->SetUseage(useage);




can't try atm.......

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this