Questions about Aspose.Tasks support and different .mpp versions

Hey Team,

We have a few questions regarding the various formats of .mpp files and Aspose.Tasks support.

  1. Which Microsoft Project (.mpp) file versions are actually different formats from each other? The reason we are asking this is to understand which Project filetype versions truly exist.

  2. What version of Apose.Tasks introduces support for the highest .mpp file format version?

  3. How does a .mpp file (this may vary by .mpp filetype version) store its filetype version ID inside itself?

@vikram.venugopal,

  1. Currently Aspose.Tasks for .NET version 21.8 and later is capable to open the latest .MPP files (latest checked version was 16.0.15128.20178). Future updates/versions of MS Project would introduce breaking changes to MPP format which will require updating of Aspose.Tasks.

  2. Full version of Microsoft Project application which was used to save the file can be found in .MPP file as a simple Unicode string:

Screenshot_1.png (9.2 KB)

We will return with the answer to your question 1 later.

@vikram.venugopal,

There is no easy answer for this question.

Simply put, almost every major version before 15...* (first number in full version string) has different formats.

But also there is updates which introduces changes in format.

For example, for 15-16 versions we used our test files data set to detect the following versions with the same format (versions boundaries are approximate):

15.0.4420.1017 - 16.0.8201.2213
16.0.8229.2073 - 16.0.11425.20202
16.0.11727.20104 - 16.0.14827.20220
? - 16.0.15128.20178 (latest known format)

Things get more complex when more complex use cases come into play. Some files could be created in old version of MS Project (2003 for instance), but later can be opened and saved by newer MS Project’s versions (2016 for example). In this case MS Project tries to persist original format, but sometimes it produces “mixed” output – file neither in MS Project 2003 format, nor in 2016 format.