The application can be of any type, including Command Line, WinForms, WPF, ASP.NET or a Windows Service. The application you build with SmartAssembly uses the same version of the .NET Framework as the original assembly. SmartAssembly works on managed code only. If your application uses a mixture of managed and unmanaged code, the unmanaged code must not be in the main assembly. Any dependencies containing unmanaged code must be excluded in the SmartAssembly project.

Icon

Windows Store Applications (for Windows 8) are not currently supported.

With the release of SmartAssembly 6.5, the following application types are no longer supported: .NET 1.1, .NET Compact Framework 2 and .NET Compact Framework 3.5.

Icon

If the application being processed uses the new .NET 4.5 APIs, the machine on which SmartAssembly is installed must also have version 4.5 of the .NET Framework installed.

Known limitations

Some features protect your assembly from further modification. You cannot use these features if you need to modify your assembly after building it with SmartAssembly.

Some features are not available when SmartAssembly processes applications based on certain technologies. This is due to fundamental limitations in those technologies. In the table below, features that can be used are shown with a .

Strong name signing, Merging dependencies, Pruning, Obfuscation, Basic strings encoding, and Adding an incorrect metadata stream work with all technologies.