Manejo de excepciones con Aspose.Tasks para C ++
Manejo de excepciones mientras se trabaja con archivos de proyectos de Microsoft
A veces, los clientes de Aspose no pueden cargar sus proyectos debido a las características no respaldadas y otros problemas y no quieren compartir sus proyectos para su análisis en nuestros foros de apoyo.
La propiedad LogText expuesta por la clase TasksreadingException se utiliza para tratar tales casos. Puede usar esta propiedad para identificar la sección problemática del proyecto, por ejemplo, una tarea problemática, recursos, asignación de recursos, etc.
Después de identificar la sección que está causando el problema, puede intentar resolver el problema al final o copiar esos datos a un proyecto separado y compartir con nosotros para resolver el problema.
El siguiente ejemplo de código se usa para identificar la causa de la excepción.
1System::SharedPtr<Project> project;
2try
3{
4 System::String dataDir = RunExamples::GetDataDir(System::Reflection::MethodBase::GetCurrentMethod(ASPOSE_CURRENT_FUNCTION)->get_DeclaringType().get_FullName());
5 project = System::MakeObject<Project>(dataDir + u"project.mpp");
6}
7catch (TasksReadingException& ex)
8{
9 System::Console::WriteLine(u"Message:");
10 System::Console::WriteLine(ex->get_Message());
11 System::Console::WriteLine(u"Log:");
12 System::Console::WriteLine(ex->get_LogText());
13 if (ex->get_InnerException() != nullptr)
14 {
15 System::Console::WriteLine(u"Inner exception message:");
16 System::Console::WriteLine(ex->get_InnerException()->get_Message());
17 }
18}
19catch (System::Exception& ex)
20{
21 System::Console::WriteLine(ex->get_Message());
22}
23