Обработка исключений с Aspose.Tasks для C ++

Обработка исключений во время работы с файлами проекта Microsoft

Иногда клиенты Aspose не могут загружать свои проекты из -за неподдерживаемых функций и других проблем и не хотят делиться своими проектами для анализа на наших форумах поддержки](1).

Свойство LogText, обнаруженное классом TaskReadingException, используется для борьбы с такими случаями. Вы можете использовать это свойство для определения проблемного раздела проекта, например, проблемной задачи, ресурсов, назначения ресурсов и т. Д.

После определения раздела, который вызывает проблему, вы можете попытаться решить проблему на своем конце или скопировать эти данные в отдельный проект и поделиться с нами, чтобы решить проблему.

Следующий пример кода используется для определения причины исключения.

 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    
Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.