Pues que despues de muchas pruebas he visto como se usa FindComponent y lo he usado dentro de mi aplicacion de prueba y me funciona perfecto pero si lo intento en la dll no me compila porque no reconoce la funcion.
Esto es lo que tengo:
Código PHP:
extern "C" __declspec(dllexport) __stdcall int SaveImageEdited(void)
{
int retval;
try
{
//Obtengo el puntero
TComponent *comp = FindComponent("FlowEdit");
if (dynamic_cast<TAddFlow*>(comp) != NULL)
{
TAddFlow *paf = dynamic_cast<TAddFlow*>(comp);
//Imprimo la imagen
paf->SaveImage(afTypeMediumFile, afWMF, WideString("\\DiagramaEditado.wmf"));
MessageBoxA(NULL,"Imagen guardada satisfactoriamente.", "Información", MB_OK | MB_ICONINFORMATION);
retval = 0;
}else{
MessageBoxA(NULL,"El puntero no es válido.", "Error", MB_OK | MB_ICONERROR);
retval = -2;
}
}
catch(...)
{
retval = -1;
}
return retval;
}
¿que me falta para que compile? ¿no se puede usar FindComponent en una dll? seria una putada ya que si me funcionaria ya que ya he encontrado el nombre del componente o eso creo.