PC Guard for .NET was the first available software copy protection wrapper for .NET framework applications!

Both PC Guard for .NET and PC Guard for .NET64 were successfully tested on variety of different .NET applications running on all .NET Framework versions (1.x, 2.x, 3.x, 4.x) and .NET compatible Windows operating systems.

Supported .NET Framework applications

- Fully managed .NET Framework desktop (EXE) applications and .NET services.

- Mixed mode C++ .NET Framework (EXE) applications.

- Fully managed .NET Framework dynamic link libraries (DLL) (both main application (EXE) and DLL module(s) has to be protected)

.NET Framework services can be encrypted but since InstallUtil will refuse to install encrypted .NET service application installation or un-installation process has to be done directly from service. Please see the following KB article for more information.

Not supported .NET Framework applications

The following .NET applications are currently not supported:

- .NET Framework Active X controls

- .NET Framework WEB applications

- standalone .NET DLL's and some mixed .NET .DLL applications.

NOTE: Although these application can not be encrypted with PC Guard their source code can be obfuscated with SourceArmor!

Additional notes

- Please see the following KB article about deploying protected .NET Framework application with ClickOnce

- Strong name signature verification should be turned off in compiler settings when compiling .NET Framework applications since signature will be invalidate during encryption process. Protected application can be digitally signed after protection.

- RTE - Runtime encryption system is not available for .NET Framework applications.

Protected program will perform the following .NET Framework specific checks during loading of protected application into memory:

1. Check installed operating system.

If Windows 95 (not supported by .NET) is installed "This program can not be run under Windows 95!" error message will be displayed.

2. Check the presence of .NET framework.

If .NET framework is not installed on target machine ".NET framework is not installed on this computer!" error message will be displayed.

3. Check if required version of .NET framework is installed.

Above error messages can be changed in language editor.

Supported .NET applications

Supported output type:

- Windows application
- Windows console application
- Windows class library

Supported platforms:

- x86 (PC Guard for .NET)
- x64 (PC Guard for .NET64)

Supported target runtime:

- win-x86 (PC Guard for .NET)
- win-x64 (PC Guard for .NET64)

NOTE: Protected x86 .NET Windows application (.dll module) can be run by bootstrap application (.exe) only and can not be run with dotnet command. Bootstrap application can also be encrypted.

This is not mandatory for x64 .NET applications. Protected .dll module will work just fine if run from command line with dotnet command.

.NET applications published with "Produce single file" option are not supported!

Supported .NET Core applications

Supported target .NET Core frameworks:

- .NET Core 2.x
- .NET Core 3.x

Supported output type:

- Windows application
- Windows console application
- Windows class library

Supported platforms:

- x86 (PC Guard for .NET)
- x64 (PC Guard for .NET64)

Supported target runtime:

- win-x86 (PC Guard for .NET)
- win-x64 (PC Guard for .NET64)

NOTE: Protected x86 .NET Core Windows application (.dll module) can be run by bootstrap application (.exe) only and can not be run with dotnet command. Bootstrap application can also be encrypted.

This is not mandatory for x64 .NET Core applications. Protected module will work just fine run if from command line with dotnet command.

Related KB articles