Cube series such as CubePDF, CubePDF Utility and more use .NET Framework. .NET Framework has multiple versions, and Cube series can be used if 3.5, 4.5 or later (4.5.2 or later only for CubePDF Utility) is installed, but we will soon change the supported version to .NET Framework 3.5, 4.7 or later for the following reasons.
- Support for .NET Framework 4.5.2, 4.6, and 4.6.1 will end on April 26, 2022. (see Lifecycle FAQ - .NET Framework)
- It is impossible to build applications targeting .NET Framework 4.0 to 4.5.2 in Visual Studio 2022, which is the latest IDE version. (see .NET Framework versions and dependencies)
- .NET Framework 4.6.1 or later is required to use the latest version of itext7, which is one of the main dependent libraries of CubePDF series.
- .NET Framework 4.7 has been added to support high DPI and dynamic DPI for Windows Forms applications. (see What's new in .NET Framework)
This change will be applied when our libraries reach version 7.0.0 (currently 6.0.2 for CubePDF SDK and 6.0.0 for other shared libraries). We will notify you again when the first update with the relevant changes is applied to our applications.
Note to application users
For application users of Cube series, please consider updating to .NET Framework 4.7 or later. In most Windows environments, it is expected to have been updated automatically via Windows Update, so there is no particular problem in that case.
If for some reason you are unable to update to .NET Framework 4.7 or later, applications built for .NET Framework 3.5 will run in compatibility mode (with .NET Framework 4.0 or later). In this case, the behavior may be different from .NET Framework 4.7 or later in some minor details. For example, since itext7 is not available for NET .Framework 3.5, CubePDF series for .NET Framework 3.5 use the previous version of itext (iTextSharp) to achieve the same functionality. For these reasons, we strongly recommend that you use our applications in an environment where .NET Framework 4.7 or later is installed as possible.
Note that the Cube series detect the version of .NET Framework installed on the PC during installation and switch the files to be copied. Therefore, if you have updated .NET Framework, please perform the overwrite installation again.
Note to library users
Next, a note of caution mainly for users of CubePDF SDK. As mentioned above, the library will also be updated to .NET Framework 4.7 or later within the next few months. The following is a list of recommendations for library users on how to deal with this change.
- Change TargetFramework to 4.7 (net47) or later.
- Change TargetFramework to 4.6.1 (net461) or later, and use libraries built with .NET Standard 2.0 (netstandard2.0) as the target.
- Use 6.0.0 (CubePDF SDK is up to 6.0.2).
- Change TargetFramework to 3.5 (net35) (not recommended).
As for the Cube series libraries, we have released the ones built for .NET Standard 2.0 as well as .NET Framework. .NET Standard 2.0 is supported by .NET Framework 4.6.1 or later, so it is expected to be possible to build with net461 and net462 specified as the TargetFramework. In the future, we will test the build in the development environment, and if any problems are found, we will notify you.
As for the option of continuing to use 6.0.0, it should be fine for a while, but if any vulnerabilities are discovered, it will be deprecated. Basically, we will not update the past versions separately from the latest version, so please regard it as a transition period. If any vulnerabilities are found, we will notify you of them at that time.
Support for .NET (.NET Core)
Finally, although not directly related to this change, we would like to mention the policy regarding .NET. .NET Core will be renamed .NET starting with .NET 5, which will be released in 2020, and announced to be the mainstream framework in the future.
We plan to release a .NET version of the Cube series in the future, but at that time, the supported version will be .NET 6 or later (even after the .NET version is released, the .NET Framework version will be updated in parallel for the time being). This is to reduce the risk of backward compatibility in the future as much as possible.