| ♥ 0 | Desenvolvi um serviço windows em C# que carrega dados entre o Primavera (v9) e um Portal Web e vise-versa. Este serviço faz a integração dos dados de 3 em 3 minutos até aqui tudo bem. Marcado como spam |
| Resposta privada Uma das causas para isso aconteçer está associada à interoperabilidade das tecnologias .NET e COM que tens devido à arquitectura do te sistema e que leva a que por vezes alguns objectos não sejam destruidos. Experimenta este código: public static void Termina()
{
if (Engine != null)
{
Engine.FechaEmpresaTrabalho();
FinalizeConnector(Engine);
}
if (Platform != null)
{
Platform.FechaPlataformaEx();
FinalizeConnector(Platform);
}
}
/// <summary>
/// Finalizes the connector.
/// </summary>
private static void FinalizeConnector(dynamic ObjCom)
{
try
{
if (ObjCom != null)
{
while (Marshal.ReleaseComObject(ObjCom) > 0)
{
// release one by one
};
ObjCom = null;
}
}
catch (Exception e)
{
throw new Exception(e.Message);
}
}
Marcado como spam |