The graphical interface to PerlNET provides full PerlNET functionality via a graphical front end.
The drop-down menus are used to save and load project files containing PerlNET configuration details, and to set default display properties.
.plc extension. When opening a project, all configuration
items are set according to the configuration saved in the project file.
uses or requires the module is displayed in the
right pane. The Source Line Context setting determines the number of context
lines from the calling source file that are displayed.
The tabs (Main, Files, Size, Options 1, Options 2, Version, Output) are used to configure build information for the output target. The tabs are described individually below.
The Main tab is used to specify the source script and configure general parameters for the project.
This option corresponds to the --script scriptname command-line option.
.exe
extension on Windows) and is stored in the build directory. Click the 'browse'
button to specify a different filename or path, or manually enter the path
and/or name in the Target field.
This option corresponds to the --exe filename command-line option.

The Module Search Path field displays the directories and libraries that are searched for modules used by the application. The default Perl search path directories are always at the end of the search path, and cannot be deleted.
To add directories or libraries to the search path, click Add. Specify the desired directory or file in the Path field, or click the 'browse' button to select a directory or file via file system navigation. Select Blib search to specify modules stored in 'MakeMaker'-style directory structures; for example, modules containing C code that must be compiled, rather than pure Perl modules. Select Shared executable to look for modules from a prebuilt library file.
Additions to the module search path are added to the beginning of the list. To alter the search order, either Edit an existing entry or delete and re-add directories in the desired order. The Edit button is also used to toggle the Blib search status for a directory. To remove a directory or file, select the desired directory and click Delete.
The keyboard keys can also be used to navigate, add, edit and delete entries. The Insert key brings up the 'add' dialog box. The Enter key brings up the 'edit' dialog box for the currently selected entry. The Delete key deletes the currently selected entry.
These options correspond to the --lib libpath, --blib libpath and
--use libname command-line options.
The Files tab is used to view, add and remove components from the output target. Component types are organized into 'containers' in the left pane; the right pane displays information about the item selected in the left pane. Click top-level component containers ('Script', 'Added modules', etc) to view a description of the component type. Click individual items in component containers to view information about specific components. For example, click a module name in the 'Script' container to view the source of the module reference, the relevant snippet of code, and links to a read-only display of the relevant files.

Each component type (described in individual sections below) has a context-sensitive menu that is invoked by right-clicking. The context menus are used for manipulating components. For example, right-click the Added modules container to add a new module; right-click a specific module contained in the 'Script' container to remove a module, or to view a module's source code.
When a module name is red, it indicates that the module was not found in the Module Search Path configured on the Main tab.
The source script specified on the Main tab is analyzed to determine its 'dependencies' - that is, the modules the source script requires, and modules required by those modules. These modules are displayed in the 'Script' container.
Right-click the 'Script' container to display a context menu with the following options:
Required modules are displayed beneath the script container in a hierarchical structure, with module dependencies nested under the modules that require them. Right-click a specific module to display a context menu with the following options:
This menu entry is only available if there are other modules included with a module name prefix shared with the current module.
The Added modules container stores modules that are manually added to the project. Modules must be manually added if the PerlNET dependency checker fails to recognize that they are required. Right-click Added modules to display a context menu with the following options:
IO::Socket.
PerlNET automatically tries to fix case mismatches.
The added modules displayed directly beneath the Added modules container will have the context menu entry Remove module from added modules instead of the Trim... entries described for the modules under the Script container. Select this entry to get rid of added modules one by one.
The Added modules container corresponds to the --add modules
command-line option.
To include additional files in the output target (accessed via the
PerlNET::get_bound_file() and PerlNET::extract_bound_file() functions),
use the Bound files container.
The Bound files container corresponds to the --bind file command-line
option.
Right-click to display a context menu containing the following options:
PerlNET::get_bound_file() and
PerlNET::extract_bound_file() functions.
Alternatively, use the Browse button in the Source panel to select a file from the file sytem. Once a file is selected, its basename automatically appears in the Filename field.
These settings correspond to the --bind command's file, data and
text arguments.
PerlNET::get_bound_file() or
PerlNET::extract_bound_file() is needed to obtain the file.
This setting corresponds to the --bind command's extract argument.
This setting corresponds to the --bind command's mode argument.
Use the Icon sources container to specify icon files to include in the output application.
Right-click for a context menu with the following options:
This setting corresponds to the --icon command-line option.
PerlNET can be instructed to scan extra scripts so that their dependent modules are included in the generated control. Right-click for a context menu with the following options:
Some core modules are required implicitly by the use of specific code constructs. These modules are listed in the Implicit modules container. Right-click to access this option:

The Size tab contains options that can be used to affect the size of the output target.
This option corresponds to the --dependent and --freestanding
command-line options.
This option corresponds to the --xclude command-line option.
This option corresponds to the --nocompress command-line option.
The Module Trim List is used to specify modules that should be excluded from the output target.
To add a module or sub-modules to the list, click Add. Specify the name of the module in the Module field. Select the appropriate option button to include the Specified module only, Specified module and sub-modules, Sub-modules one level down only, or Sub-modules only. Use the Edit and Remove buttons to change or delete existing list items.
The keyboard keys can also be used to navigate, add, edit and delete entries. The Insert key displays the 'add' dialog box. The Enter key displays the 'edit' dialog box for the currently selected entry. The Delete key deletes the currently selected entry.
This option corresponds to the --trim modules command-line option.

To create a debug application, specify debugging parameters as described below.
These options correspond to the --debug host:port command-line option.
The temporary directory is used by the target to store temporary files extracted from the target.
TEMP (Windows) or
TMPDIR (Unix) environment variable. Select Use custom temporary directory
to specify an alternate directory for storing temporary files.
This option corresponds to the --tmpdir path command-line option.
This option corresponds to the --clean command-line option.
Select the Use run library option to specify an external directory relative to the target used to look up additional modules and DLLs at runtime. The default is to Use no run library.
These options correspond to the --runlib and --norunlib command-line
options.

The generated target can be shared so that other Targets can make use of its modules and bound files. The default does not share the generated target, but you can choose to share it only with Targets generated by your own PDK license or with all other Targets.
These options correspond to the --shared command-line option.
This option corresponds to the --nologo command-line option.
This option corresponds to the --verbose command-line option.
This option corresponds to the --force command-line option.
This option corresponds to the --dyndll command-line option.
This option corresponds to the --gui command-line option.
Use the Version tab to configure the information that is displayed to users when they view the properties of the output target.
This option corresponds to the --info name = val ; ... command-line
option.

The Output tab is used to generate the output application according to the specifications on the other tabs. The command string (corresponding to the command-line version of PerlNET) is displayed in the PerlNET Command Line field. Click the Make target button to generate the application; build messages are displayed in the Output field. The verbosity of output is determined by the Verbose logging during run setting on the Options 2 tab.
If the target was generated, then the Output field will have a link that can be used to test or debug the generated target. This starts the target without any command-line arguments. If arguments must be provided, start the target from the command line.