Umgang mit Ausnahmen mit Aspose.Tasks für C ++
Umgang mit Ausnahmen während der Arbeit mit Microsoft -Projektdateien
Manchmal können Aspose -Kunden ihre Projekte aufgrund nicht unterstützter Funktionen und anderer Probleme nicht laden und möchten ihre Projekte nicht für die Analyse in unseren Support -Foren teilen.
Die von der tasksReadingException -Klasse ausgesetzte Logtext -Eigenschaft wird verwendet, um solche Fälle zu behandeln. Sie können diese Eigenschaft verwenden, um den problematischen Abschnitt des Projekts zu identifizieren, beispielsweise eine problematische Aufgabe, Ressourcen, Ressourcenzuweisung usw.
Nachdem Sie den Abschnitt identifiziert haben, der das Problem verursacht, können Sie versuchen, das Problem an Ihrem Ende zu beheben oder diese Daten in ein separates Projekt zu kopieren und mit uns zu teilen, um das Problem zu beheben.
Das folgende Codebeispiel wird verwendet, um die Ursache der Ausnahme zu identifizieren.
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