Making Sense of PixTools and ISIS Permissions

The various parts of the PixTools and PixTools for .NET toolkit are licensed seperately, and there are also permissions to use different ISIS drivers.  There are a number of options, and they’re fairly straightforward, once they’re explained.  Developers first see ‘permissions’ in the makeperm utility.  Here’s the main screen for makeperm:




The most basic permission is the ISIS runtime that allows the application to run.  Since every application has to have a runtime permission, it’s just included when makeperm runs – it is not an option, but it’s important to know that this runtime permission is there.  Makeperm and ISIS permissions trust the developer - these permissions are not reported back to us, and there's no central license server.  All a developer needs to create permissions is a string, such as Zyzzyx Corporation for the customer ID, and the corresponding customer key, a numeric string such as 1234567 for the customer key.  Running makeperm will remove the development permissions, and replace them with a file and a license file, named after the customer key, so for this example: 1234567.chn.  If nothing else is checked, the license file will contain the ISIS runtime permission, and nothing else.


The ISIS runtime permission actually comes in two different flavors, a PixTools for .NET permission, and a PixTools permission.  Each toolkit comes with the appropriate version of makeperm to create the right runtime permissions for applications. The rest of the permissions are optional, and must be selected when running makeperm.


At the top are the Level 1, Level 2, and Level 3 scanner permissions.  These allow an ISIS application to use scanners of those levels.  Level 1 scanners are typically slower, simplex scanners.  Level 2 scanners are a little faster, duplex, and can offer some additional functionality (such as imprinters or advanced image processing)  Level 3 scanners are even faster, and usually come with a great deal of additional functionality. Above the Level 3 scanners are the most capable and functional scanners — production scanners.  These scanners are capable of extremely sophisticated image processing and document control, and marry that power to exceptionally fast (150ppm+) scanning.  Production scanner licenses are treated as a special permission, and discussed below.


Most ISIS-enabled scanners – and that’s almost every document imaging scanner, these days – come with an ISIS driver, and this ISIS driver is already licensed to work with any ISIS application.  Some developers do not ship with any of these scanner permissions enabled, trusting that the ISIS driver will arrive with the scanner, and they’re generally right.  Others prefer the confidence and convenience of shipping all ISIS drivers with their application, and some enable a subset of drivers.


These scanner permissions mean only that the ISIS application has a license to use a subset of scanners.  They do not enable additional scanner features, or application features – they relate only to the scanners.  Even more importantly, these scanner permissions often ship with the scanners themselves!




Once the image processing license options are opened, they’re fairly straightforward, too, and once selected, they show up in the main form.




The special permissions are just that: special permissions for unusual situations.  For a while, LZW compression, for example, was allegedly covered by a patent owned by Unisys corporation.  For this reason, although PixTools had LZW compression/decompression, we could only enable LZW permission for customers with whom we had a legal agreement regarding that compression.  Some customers wanted to enable production level scanners, and we enabled that as a special permission, as well.  Chances are that none of these special permissions will show up in your version of makeperm, as these capabilities are added to makeperm when negotiated. A developer needing to add special permissions to makeperm will recieve a program called  addperm.exe from EMC which will add the capability to makeperm.