# Use of the dll in a test GUI

## Example

An example of C#/.NET is provided below. This shows the use of ISGEncryption.dll by an example application in the figure below.

Description of the GUI (= Graphical User Interface)

Index | Meaning | Description
1 | Password | This is the password to encrypt/decrypt the NC program. The password may consist of 1 to 56 characters. However, we recommend min. 8 characters. The password is not stored in the encrypted program. Its validity is not verified later. In other words, an invalid password during decryption does not lead to an abort but the program cannot be correctly encrypted nor is it readable.
2 | Output directory | Besides the default directory (= directory of source file), you can select a different folder. If you use a different directory than that of the source file, tick the box below. If selected, all decrypted/encrypted files are saved here.
3 | Encrypted files | File extension for encrypted files; *.ecy is the default. The file extension is also the file filter for decryption. Files with this extension are automatically detected as encrypted and decrypted at start.
4 | NC files | Files with this extension are automatically detected as NC files and encrypted at start.
5 | Add file | Add one or several files to the list to be processed (see window below).
6 | Delete marked list entries | Marked list entries are removed from the program.
7 | Open log directory | Open the directory containing the log files. The log files are generated in the selected language when they are encrypted or decrypted.
8 | Start | Start of encryption or decryption. All entries in the list are processed, regardless of whether elements are marked in the list or not. First remove files from the list if they are not to be processed.
9 | Add folder | Add the contents of an entire folder with the file filter (4) of the list to be processed (see window below).
10 | Delete list | Removes all current entries from the encryption/decryption list.
11 | Source file | Indicates what course files are encrypted/decrypted.
12 | Destination file | Indicates the destination files created for encryption/decryption.
13 | Status | The current status for encrypting/decrypting the file.
14 | Link | Link to the output file folder.
15 | Marked files | Number of marked elements / total number of elements.
16 | ISG Crypter Version | Program version.
17 | DLL version | Version of the dll for decryption.
18 | Language | Set the required language. The possible languages are 'German', 'English', 'Russian', 'Italian', 'Spanish', 'French', 'Japanese' and 'Chinese'. The English terms are kept even when the language is changed.

## Additional information

- Encryption example