ho provato a fare:
codice:
        FNPTR pFn;
	HMODULE mod=GetModuleHandle("C:\\testdata\\Frg\\Debug\\crtx.exe");

	pFn=(FNPTR) GetProcAddress(mod, "FactoryDS");
	
	Factory1* F;
	pFn(F);
	CBeamDSChess* pChess = F->CreateDS();
	int n = pChess->m_nChessBoard;
	
//////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////
void _declspec(dllexport)  FactoryDS(Factory1*& pF)
{
	Factory1* pf = Factory1::get_instance();
	pF = pf;
}
esportando l'istanza del singleton tramite la funzione FactoryDS e andando a pescare l'istanza con GetProcAddress.
Il problema adesso è l'inclusione dei files , vorrei poter includere tutti gli header di cui ho bisogno nel programma principale e non in quello dove prendo il modulo e l'indirizzo dell'istanza del singleton.
è possibile?
altrimenti il problema è che tantissime funzioni di pChess-> richiedono header che nel progetto principale sono gia inclusi , ma non nel progetto che crea la dll , e non vorrei appesantire troppo quest ultimo , altrimenti non ha senso dividere i due progetti.
grazie.