FAQ

Support

Q. Found New Hardware wizard fails with error “Access Denied”?

A. This error may result from the Found New Hardware wizard not being able to write information into the \Windows\INF directory in the process of installing and configuring the driver. This is usually a result of the directory having been set as read-only. You can check if files can be written to \Windows\INF by making sure that you are logged in using the same account that you used when you tried to install and then trying to save a Notepad file into the directory. If you can't save the file, then you need to change the directory settings by right-clicking on the directory, selecting Properties, and un-checking the read-only checkbox at the bottom of the Properties window.

Q. The dongle was attached prior to installing the driver?

A. If the dongle was attached before the driver files were installed, please uninstall using the install utility.

Q.Will the USB KEYLOK work with virtual environments?

A. Yes. Although we have not tested it specifically for virtual environments, we have had several customers who have had success with it and have not reported any problems.

Q. What files does the USB dongle use and where do they go?

A. Files should be copied to the following directories:

Windows XP:
usbkey.sys \Windows\System32\Drivers
ppmon.exe \Windows\System32
kl2dll32.dll \Windows\System32
kl2dll.dll(16-bit only) \Windows\System32
usbkey.inf \Windows\inf
Windows 98/ME:
usbkey.sys \Windows\System
ppmon.exe \Windows\System
kl2dll32.dll \Windows\System
kl2dll.dll(16-bit only) \Windows\System32
usbkey.inf \Windows\inf\other

 

Q. The system cannot find the files specified?

A. First, make sure that USBKey.inf and USBKey.sys are in the correct directories.
Then, check the Registry. if the following KEYS are missing you may receive the error.
“HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce”
“HKEY_LOCAL_MACHINE \Software\Microsoft\Windows\CurrentVersion\RunOnceEx”
If one or both are missing, create a new key by right clicking on CurrentVersion and selecting New, Key.

Q. Check for KEYLOK failed?

A1: Verify The Device Driver Is Loaded:

  1. Open the Control Panel
  2. Select System
  3. Select the Hardware tab
  4. Click the Device Manager button

If the USB Dongle is attached it should be displayed in the Device Manager as “USB Dongles -> USB Dongle - Software Protection Device”

Error Resolution
The dongle appears with a yellow exclamation mark 1. If the dongle was attached prior to installing the driver refer to USB Installation Issues
2. The USB port may be a non-standard port

 

The Device Driver is the program that actually communicates directly with the security dongle. The name of the device driver file is USBKEY.SYS.


A2:Verify that the files are in the correct locations
In order for the dongle to be recognized the KEYLOK II device driver and supporting files must be installed. The most effective method of installing KEYLOK II files is to use the Install Utility.

Files should be copied to the following directories:

Windows XP:
usbkey.sys \Windows\System32\Drivers
ppmon.exe \Windows\System32
kl2dll32.dll \Windows\System32
ppmon.dll \Windows\System32
usbkey.inf \Windows\inf

 

 

usbkey.sys \Windows\System
ppmon.exe \Windows\System
kl2dll32.dll \Windows\System
usbkey.inf \Windows\inf\other

 


A3: Verify that the kl2dll32.dll file is dated after 12-20-2000 (only for applications using a dll, for example Visual Basic applications)

    Verify that kl2dll32.dll is dated after 12-20-2000.
  • This file is located in the \Windows\SYSTEM32 directory on Windows XP machines
  • This file is located in the \Windows\system directory on Windows 98 machines

If this file is dated before 12-20-2000 delete the file and re-install the drivers using the latest Install File.


A4: Verify the company unique codes used to compile the protected application match that of the dongle
For more information on Company Unique Codes, please click here.


A5: Verify that the dongle is grounded correctly
We have found that some PC manufactures have altered the way USB connections are being grounded. This new or non-standard method of grounding can cause our dongle to be displayed as "USB Device" or "Unknown Device" in the Device Manager. We have only experienced this condition with about 1% of machines in use. We have made a change to our dongle to accommodate these non-standard methods of grounding. If you purchased a USB dongle prior to 12/2002 you may be experiencing this problem. Please proceed to A6.


A6: Contact technical support

Q. What drivers are used with the USB dongle?

A. USBKEY.SYS -- This is the device driver, which is common to all supported operating systems. The device driver performs the actual communications with the security device (dongle) and returns the results to the calling application.
USBKEY.INF--This file provides the Windows Found New Hardware wizard with the information it requires in order to properly install the driver for the dongle. There are several strings stored in this file that are intended to be modified to correspond to your desired messages and company name. This is recommended in order to maintain the anonymity of the product.

Q. What DLLs or OBJ files will I need to link to?

A. Your application must be linked with one of the KEYLOK object files or utilize a KEYLOK DLL as part of the interface to communicate with the security key. If a DLL is required for your development language (e.g., for Visual Basic) the appropriate DLL(s) will be copied to the same directory as your sample source code (e.g. ..\KEYLOK2\VBasic). If an object file is required for your development language (e.g., for C/C++) the appropriate object file(s) will be copied to the same directory as your sample source code (e.g. ..\KEYLOK2\VisualStudio32). Some development languages and operating system versions support finding the DLL in the same directory as the application, but many require that you copy the DLL to the 'Windows' or 'Windows'\system directory.

    To use our networking solution, you must replace the standalone DLLs or object files with their network-enabled equivalents:
  • On 32-bit systems, replace KL2DLL32.DLL or KFUNC32.OBJ with NWKL2_32.DLL or KFUNC32N.OBJ
  • On 64-bit systems, replace KL2DLL64.DLL or KFUNC64.OBJ with NWKL2_64.DLL or KFUNC64N.DLL

KFUNC32.OBJ--Object file to be linked into 32-bit applications. Checks for the dongle will be made only on the local machine
KFNC32N.OBJ--Network object file to be linked into 32-bit applications. Checks for the dongle will first be made locally, then if it is not found an attempt is made to find the dongle on the network. Successful linking of 32-bit applications with KFUNC32N.OBJ also requires the WIN32 SDK supplied library of NETAPI32.LIB
KFUNC64.OBJ --64-bit equivalent of KFUNC32.OBJ
KFUNC64N.OBJ --64-bit equivalent of KFUNC32N.OBJ
KL2.OBJ-- Some versions of KFUNC32.OBJ require linking with KL2.OBJ for resolution of external calls. We are in the process of phasing out the requirement for KL2.OBJ for 32-bit applications. KL2.OBJ provides backwards compatibility to the very old WIN32S environment, which is rarely (if ever) used today.
KL2DLL..DLL---16-bit DLL interface for local dongle checking
KL2N.DLL -- 16-bit DLL interface for local/remote (network) dongle checking
KL2DLL32.DLL-- 32-bit DLL interface for local dongle checking
NWKL2_32.DLL-- 32-bit DLL interface for local/remote (network) dongle checking
KL2DLL64.DLL -- 64-bit equivalent of KL2DLL32.DLL
NWKL2_64.DLL -- 64-bit equivalent of NWKL2_32.DLL

Q. When Windows XP boots with an ATEN USB serial converter connected, I get blue screen?

A. If the ATEN USB Serial Converter (USB to 9 Pin RS-232 Model UC-232A) is attached and a KEYLOK USB dongle is also attached when Windows XP is started, a blue screen will result.

Solution
Update the ATEN driver to version 1.5 or later.

Work Around
Boot the machine without the USB KEYLOK attached. Once the machine is started, attach the USB dongle.

Q. Non-standard USB ports?

A. We have found that some PC manufactures have altered the way USB connections are being grounded. This new or non-standard method of grounding can cause our dongle to be displayed as "USB Device" or "Unknown Device" in the Device Manager. We have only experienced this condition with about 1% of machines in use. We have made a change to our dongle to accommodate these non-standard methods of grounding. If you purchased a USB dongle prior to 12/2002 you may be experiencing this problem. Please contact Technical Support.

Q. What do I need to do to use both parallel and USB dongles?

A. The only requirement for using both USB and parallel dongles is to install the appropriate drivers for the type(s) of dongles that you want to use. The API for USB and parallel dongles is exactly the same, so if your application works with one type, it will work with the other with no changes.

You can use our install utility, install.exe, to install either or both types of dongle drivers. For more information on how to use the install utility, click here.

Q. How can I install the USB drivers manually?

A. In some cases, it may necessary or desirable to install the driver files manually rather than using our installer. The following tables indicate what needs to be done to install the drivers and interface files manually on a Windows NT/2000/XP 32-bit system. For other configurations, please contact Technical Support.

To install the USB drivers manually, copy the following files to the locations shown:

File Name Description Location
KL2DLL32.DLL (standalone) 32-bit KEYLOK II DLL \Windows\System32
NWKL2_32.DLL (network) 32-bit KEYLOK II DLL \Windows\System32
PPMON.EXE Anti-debugger \Windows\System32
USBKey.sys USB device driver \Windows\System32\Drivers
USBKey.inf INF file \Windows\INF

Q. How does KEYLOK handle system time differences when expiration dates are used?

A. Slight time differences that may be present when you program the dongle will be past by the time the dongle is received by your customer. For example: if the dongle system time is 1:00pm and the customer's computer system time is 12:55pm, the dongle would give a date set back error if it were immediately used. However with the time to deliver the dongle to the customer taken into account, slight differences that the system clocks may have are inconsequential.

As for time zone differences, the dongle uses Greenwich meantime, so time zones are not a factor.

If the customer were to have their clock set back when they tried to use the dongle, it would not work until their system date/time were corrected to at least a point equal to or later than the (actual) programmed time.

If the customer set their system time ahead and used the dongle, the last usage date/time are reset to their current system date/time. If the customer then corrected their system time, they would not be able to use the dongle until a time equal to or later than the previous use time that was logged on the dongle. This can be corrected with a remote update.

Q. VMWare unrecognized dongle?

A. Edit '/etc'fstab' and change the line "usbfs /proc/bus/usb usbfs noauto 0 0" to "usbfs /proc/bus/usb usbfs auto 0 0" and reboot. The dongle should then show up in VMWare's USB Devices as an Anonymous Device. Enable the connection to the VM and Windows should find and configure it.

Q. USB Device not recognized on Dell systems?

A. For Windows 98 and ME Dell systems recreate the USB root hub registries by running usbreg.exe. This utility can be downloaded from Dell support here.

Q. Bluetooth USB problem on Dell 600m's and d600's?

A. There is a known hardware problem with bluetooth cards on Dell 600m's and d600's which results in USB Device not recognized errors. It has to do with the way the bluetooth card disconnects and reconnects on the motherboard. There is not a known fix beyond removing the bluetooth card.

Q. How to protect a Flash movie file?

A. Flash movies can be protected with a dongle as long as they are compiled into an .exe and can link to our .dll file. There are several programs on the market to compile Flash programs and scripts, which would allow them to be used with a security dongle. Although we cannot recommend any particular product, here are several we have found:

SWFKit Pro: Converts SWF to EXE, allows Script embedding and DLL links. Cost: $399
Website: http://www.swfkit.com/swfkit.html
Pros: Seems to be the most solid and well documented.
Cons: Highest price

Mprojector: Converts SWF to EXE, and allows Script embedding. Cost: $199
Website: http://www.screentime.com/software/mprojector/
Pros: Allows multiple SWF files
Cons: Cannot link to DLL, only COM files (which creates more overhead work).

FLAjector Converts SWF to EXE, allows Script embedding and DLL links Cost: $99
Website: http://www.flajector.com/index.html
Pros: Offers 999 day free trial
Cons: Documentation seems incomplete and reviews are highly varied.

All of them offer a free trial download on their websites, so you may want to try several before you purchase.

Q. Check For KEYLOK failed (locally)?

A1: Verify the dongle is firmly attached to the printer port
Ensure that the dongle is securely attached to the parallel port by threading the retaining screws firmly into the port on the computer. A dongle that is not firmly attached may cause communication problems.


A2: Verify the device driver is installed:
In order for the dongle to be recognized the KEYLOK II dongle driver and supporting files must be installed. The most effective method of installing KEYLOK II driver files is to use the INSTALL Utility.


A3: Verify the device driver is started (only applies to Windows NT/2000/XP)

  1. Open a command prompt window
  2. Type "net start parclass"
Error Resolution
System error 55 has occurred Verify the dongle is attached
System error 2 has occurred Verify the driver file "Parclass.sys" is installed in the "%System\System32\Drivers" directory.
The device driver is the program that actually communicates directly with the security dongle. The name of the device driver file is PARCLASS.SYS for Windows NT/2000/XP.

 


A4: Verify the files are in the correct locations
In order for the dongle to be recognized the KEYLOK II device driver and supporting files must be installed. The most effective method of installing KEYLOK II files is to use the Install Utility.

Files should be copied to the following directories:

Windows NT/2000/XP:
parclass.sys %SystemRoot%\system32\Drivers
ppmon.dll %SystemRoot%\system32
ppmon.exe %SystemRoot%\system32
kl2dll32.dll %SystemRoot%\system32
kl2dll.dll (16-bit only) %SystemRoot%\system32
kl2n.dll (16-bit only) %SystemRoot%\system32
nwkl2_32.dll (network only) %SystemRoot%\system32
Windows 98/ME:
parclass.vxd %windir%\system
ppmon.exe %windir%\system
kl2dll32.dll %windir%\system
kl2dll.dll (16-bit only) %windir%\system
kl2n.dll (16-bit only) %windir%\system
nwkl2_32.dll (network only) %windir%\system

 


A5: Verify the company unique codes used to compile the protected application match that of the dongle.
For more information on Company Unique Codes please click here


A6: Verify that the CMOS proprieties are set correctly:
Changing Parallel Port Setting in CMOS:
KEYLOK device operations are fully compatible with parallel printer ports placed in all modes, including ECP, EPP and bidirectional modes. However, certain configurations on some computers do not allow communication with our dongle. Changing this setting will usually clear up this communication problem. Follow these steps to change this setting.

  1. Restart computer and enter the Setup (CMOS). Most computers will give instructions on which button to hold down during the boot process to enter Setup (commonly DEL, F2 or F8). If this is not displayed please refer to the manufactures documentation to determine how to enter Setup.
  2. Navigate to the Parallel Port Setting. Most often the Parallel Port Setting can be found under the Advanced Menu then I/O Device Configuration or Peripheral Setup. (Read instructions on the bottom of the screen to determine how to navigate and change settings)
  3. Change the port setting from the current setting to one of the other settings (common Port settings are ECP, EPP, ECP+EPP, Normal). It may be necessary to try each one before finding that correct combination for the computer.
  4. Save and Exit the Setup
  5. Attempt to communicate with the dongle again.

A7: An option within your software may be set to force checks of only a certain port for the dongle (e.g. LPT2 only), whereas the dongle might be on a different parallel port. For most client platforms port searching of all active parallel ports works best.

Multiply the Port_Select_Option by 8192 and add it to the constant KLCHECK to create the argument value. This moves the port option bits to the high order bit positions in the argument.

The Port_Select_Option is defined as follows:

0 Search LPT1, LPT2 & LPT3 for device
1 Search only LPT1 for device
2 Search only LPT2 for device
3 Search only LPT3 for device
4 Search addresses 378H, 3BCH and 278H for device.
5 Search only address 378H for device
6 Search only address 3BCH for device
7 Search only address 278H for device

Options '0' and '4' work best for most situations. LPT port addresses are those established by the ROM BIOS during the boot of the computer. The addresses of the ports found are stored in a data table at segment 40 offset

If you have a situation where the security device search is encountering a printer port that does not have the device, then the interrogation routine can result in a reset signal being sent to the printer. Using the Port_Select_Option that corresponds to the actual port on which the device is installed can eliminate this. We recommend that the port option be stored in a data file that can be easily altered by the end user (e.g. using a simple text editor). Please remember that the port option is ignored by KEYLOK device drivers.

There is a known problem associated with the use of Watcom C to generate AutoCAD addins. For the AutoCAD environment it is necessary to use a port searching option that uses port addresses, not LPT ports, or else a GPF is encountered during the attempt to read the port address from the port table.


A8: Contact technical support

Q. Parclass Error 0x37?

A. This error may occur under the following conditions

  1. A parallel port dongle was not connected when the INSTALL.EXE utility was run
    - Resolution - 

Start the driver

  1. The CMOS properties of the computer may need to be adjusted

Q. Parclass Error 0x42C?

A. This error means that something on your machine upon which the parclass.sys parallel port driver software depends is missing or non-functional. The most common cause for this error is that the parallel port driver service parport has not started. You can manually start the service by going to a command (C:/>) prompt and typing net start parport and pressing return. If the system responds with a message saying that this is an invalid service name, it is most likely either that the parallel port was not enabled in the BIOS or the parallel port software was not installed in Windows. To fix this, reboot the computer and make sure that the parallel port is enabled in the BIOS and set up as a bi-directional ECP port. Windows should automatically install the correct parallel port software when the system is restarted.

Q. Error Code 0x02 - parclass.sys not found?

Q. Error 1068 - No parallel port or dongle not attached?

Q. The dongle only operates with the printer not attached to the dongle -  The dongle only operates with the printer turned on?

A. The problem is most likely due to either a poor parallel port driver or heavy loading from the printer.

Resolutions

  • Install the dongle on a different parallel port or computer
  • Keep the printer on
  • Upgrade the printer driver

If this does not correct the issue, try a different dongle.
If you are still having problems contact Technical Support.

Q. There is a paused print job in the print manager and the dongle does not work?

A. Check printer properties to see if there is a pending print job and delete the print job to free up the port.

Q. The dongle does not work on a docking station?

A. There are some laptop docking stations and/or port replicators that do not extend the parallel port connections properly. Connection of the dongle directly to the laptop parallel port will take care of this problem.

Q. Dell Dimension 8100 - Failure: start service: parclass error code: 0x37?

A. This is a known issue with Dell Dimension 8100 computers.

    To resolve this issue follow these steps:
  1. Start the computer and press F2 to go into BIOS setup
  2. Within the BIOS setup, scroll down to Integrated Devices and press Enter
  3. Choose Parallel Port and press Enter
  4. Press the space bar until the mode changes to PS/2
  5. Press Esc Twice
  6. Scroll down to Auto Power On
  7. Press the space bar until Auto Power On is Disabled
  8. Press ESC
  9. Press Enter to save the changes and exit
  10. From a command prompt type "net start parclass"

Q. Why do I need to reboot when I switch dongles on a machine?

A. On NT/2000/XP machines, the device driver parclass.sys is locked to the device found during the startup of the driver. If you need to change from one dongle to another dongle (for instance when programming dongles) after the driver has been started, you must:

Method 1

  1. Stop the driver by issuing the command from a DOS Prompt "net stop parclass"
  2. Switch the dongle, and then
  3. Restart the driver with the desired dongle installed by issuing the command, "net start parclass".

Method 2
Another method is to use the API call DISABLESNCHECK:
This task is used strictly for internal use when programming security dongles using the parallel port dongle device driver.

Under 'normal' driver operation the serial number of the KEYLOK dongle is read when the driver is activated. All subsequent calls to the security system check to make sure that the serial number of the attached dongle has not changed from the original one detected. If a serial number switch is detected then security system calls simply return random numbers for return arguments. This is a security feature designed to protect you. For example, if you are performing a remote update at a client's facility that has two of your products, one inexpensive and the other expensive, each controlled by a separate dongle, the end-user could indicate to you a desire to acquire a lease extension on the lower price product and surreptitiously have it applied to the dongle associated with the more expensive product by switching the dongle during the remote update process. Continuous serial number checking prevents this and many similar scenarios from happening.

When this task is called, subsequent serial number checking is disabled until the driver is restarted.

Method 3
Alternately, you could simply reboot the operating system after swapping dongles.

Q. The application terminates several seconds after call to security dongle, sometimes with a GPF?

A. This is nearly always caused by forgetting to copy the anti-debugging utility PPMON.EXE to the windows\system or winnt\system32 directory. This utility is only required for 32-bit applications that perform a call to KEYBD with an argument of zero to launch the anti-debugger.

Another cause (reported on one occasion) involved a conflict with an anti-virus utility. The virus scanner was set to scan each executable program as it was loaded. The scanning process was in progress at the time the security module was called to check for the dongle. The anti-debugging utility (PPMON.EXE) detected the virus-scanner as a debugger and therefore terminated the application.

Q. Check for KEYLOK failed (server)?

A. This information can be found on our Networking FAQ page.

Q. I have the connector pins facing toward the computer and the dongle does not work?

A. Remove the dongle from the (Serial) port and reinstall on the printer port. NOTE: Serial port voltages may damage the dongle.

Q. Application termination (only relevant with parallel port dongles)?

A. This task is applicable when

1) running 16-bit applications in a Windows 95/98/ME/ NT/2000/XP environment, and/or
2) using network security routines to access a single dongle from multiple computers. It notifies the security system to free up resources allocated to the application. There are three situations where this is required. 

Windows 95/98/ME fails to properly release resources allocated to 16-bit applications at the time they terminate. Therefore the 'handle' to the device driver is not released. As you start and terminate your program, each closure will leave a handle to PARCLASS.VXD open. If the open handle count exceeds the number provided for by the operating system, subsequent copies of your program will fail to find the security device. The 'TERMINATE ' call forces closure of the handle to the PARCLASS.VXD device driver to prevent this problem.

Windows NT 3.5 only supports 10 simultaneous sessions . Without this call to release the session data, the 11th attempt to restart an application and communicate with the device through the device driver fails.

When utilizing the KEY-LOK generic NETBIOS network protocol for multi-node access to the security device, the security system must be notified when the application is being terminated so that the usage count allocated to the process can be freed for use by another process. This is usually done automatically by the operating system when 32-bit applications terminate, but must be done 'manually' for 16-bit applications.

TERMINATE
a. Send Arguments:
1. The constant TERMINATE = -1 (or unsigned decimal 65535)
2. Dummy Argument
3. Dummy Argument
4. Dummy Argument
b. Return Arguments:
1. Undefined
2. Undefined 

Q. What do I need to do to use both Parallel and USB dongles?

A. The only requirement for using both USB and parallel dongles is to install the appropriate drivers for the type(s) of dongles that you want to use. The API for USB and parallel dongles is exactly the same, so if your application works with one type, it will work with the other with no changes.

You can use our install utility, install.exe, to install either or both types of dongle drivers. For more information on how to use the install utility,click hereBack To Top

Q. What is TCP/IP Networking?

A. TCP/IP networking allows you to access a dongle mounted on a central dongle server machine from an application running on a remote client via a TCP/IP network.

You can use either USB or parallel keys with our TCP/IP networking solution. We currently have multi-user keys available that will support from 3 to an unlimited number of simultaneous users. You can also access our regular single-user keys over a network, but can only have one user connected to the key at a time.

Our install utility, install.exe, will install all of the necessary software and drivers for either a dongle server or a client.

Q. Make sure the protected application is compiled using the networking object (OBJ) file or using the networking DLL?

A. Verify the dongle is using the correct OBJ file or Dll file

In order for your protected application and find the Security Dongle over the network it must either be compiled using KFUNC32N.OBJ(32-bit)/KFUNC64N.OBJ(64-bit) or use the networking DLL (NWKL2_32.DLL(32-bit), NWKL2_64.DLL(64-bit)) These files are compiler dependent and can be found in the sample code for the corresponding compiler.

We strongly recommend that you use the latest version of our installer in order to make sure that you always install the latest versions of our DLLs. Click here to download the latest version of the installer.

Q. Is the 'subnet mask' is set the same for both the server and clients?

A. Please note that it is strongly recommended on a TCP/IP network that the 'subnet mask' be set the same for both the server and clients. Network 'properties' can be used to acquire the subnet mask. Another method to acquire the subnet mask and other platform related data is to issue the command 'ipconfig -all'.

In some cases it may be possible to communicate across subnets using TCP/IP networking. The details are dependent upon your specific network configuration, so we can not provide specific recommendations concerning how to implement communication across subnets. As a starting point, however, we recommend that you try using a TCPIPSVR.DAT file to point the client to the server.

Q. How can I point the client to a specific server?

A. Use a TCPIPSVR.DAT file on the client.

In order for to force an application running on a client machine to point to a specific server, place a file named TCPIPSVR.DAT in the \Windows\System32 directory. TCPIPSVR.DAT should be a standard ASCII text file (such as those created by Notepad) and should contain one line with either the full IP address or network name of the server.

You can also use the install utility to create a TCPIPSVR.DAT file. When you install the client software, click the Set Server button. The utility will then allow you to either enter a network name or IP address manually or select the desired dongle server from a list of dongle servers currently active on the network.

Q. Is there is a firewall, router, or security software setting blocking communication between client and server?

A. In order for a client application to communicate with a dongle server via TCP/IP, verify that no firewalls or security software on client or server or routers settings are blocking communications.

All firewalls, security software, and routers must be set up to allow klserver.exe to communicate via TCP/IP, and must allow communications via TCP/IP port 4242. In addition, if you are not using a TCPIPSVR.DAT file to point the client to a specific server, all firewalls, security software, and routers must be set up to allow UDP communications between client and server.

Q. Is the TCP/IP dongle server klserver.exe is installed and running?

A. Check to make sure that klserver.exe is installed in \Windows\System32 (32-bit OS) or \Windows\SysWow64 (64-bit OS) and that it is running as an automatic service.

You can check to make sure that klserver is running by going to a command (C:\>) prompt, typing net start klserver and pressing Return. The system should respond that the klserver service has already been started. If you get a response that thge klserver service has been started successfully, go to Control Panel>Administraive Tools>Services and make sure that klserver is listed and that it is set to automatic to make sure that it starts each time the machine is booted. If you get any other response, contact KEYLOK Technical Support for more help:

Q. How can I change the idle session timeout?

A. Put a KLTCPIP.DAT file on the dongle server.

A TCP/IP client will stay connected to the server indefinitely (as long as the server is running without interruption) even if the session is idle. In order set a fixed timeout (in minutes) for idle dongle session clients, put a file called KLTCPIP.DAT in the same directory as klserver.exe on the dongle server. The file should be a standard ASCII text file (such as those created by Notepad) containing one line with the number of minutes that can pass with no activity from a client session before the session times out and is disconnected.

Q. What is NetKeyMonitor.exe and how can I use it?

A. NetKeyMonitor is a company unique utility that scans the system for active TCP/IP dongle servers and reports the maximum number of simultaneous sessions reported and the number of session currently in use.

KEYLOK supplies a copy of NetKeyMonitor set up for our DEMO dongles on our DEMO CDs and a copy set up for your company unique production dongles on our Company Unique CDs. In either case, the file is locatted in the \Networking directory. It will also be installed into the \Program Files\KEYLOK2\Networking directory on your computer when you install the SDK form either the DEMO or Company Unique CD.

To use NetKeyMonitor, double-click on the file to start the program. Click on Status Monitoring to start monitoring. A window will appear showing all active servers that can be accessed from that machine (up to a maximum of five). The maximum number of simultaneous sessions supported and the number currently in use for each server will also be shown. If the programs displays No/Wrong Dongle instead of a number, it indicates either that no dongle is currently attached to that server or that the dongle attached does not have company unique codes matching the version of NetKeyMonitor in use

Q. How do I set the maximum number of simultaneous users in a multi-user key?

A. Use either WinDEMO or KLTool to set the maximum number of users.

Multi-user keys are shipped with the maximum number of simultaneous users set to 1 by default. If you wish to support more users, you must set the maximum number using either the WinDEMo or KLTool utilities supplied on our DEMO and Company Unique CDs (in the Demos directory). You can set the number to any value from 0 to the maximum number of users supported by the hardware of the key.

Q: TCP/IP Troubleshooting
A:

  1. Be sure you can ping from the client to the server.
    Example: From a Command Prompt:
    ping "servername"
    or
    ping "IP Address"
    If pinging is not possible all communications may be disabled between the client and server. Ensure that there is a "Trusted Zone" defined in the firewall settings for the connection between the KEY-LOK client and the server.
  2. Configure security settings.
    All firewalls, security software, and routers must be set up to allow klserver.exe and your application (yourapp.exe) to communicate via TCP/IP.
  3. Communications must be allowed via TCP/IP port 4242.
    This is generally allowed if a program has permissions to communicate but it may be necessary to open this port manually on the firewall for both the incoming and outgoing TCP port.
  4. Unblock incoming and outgoing UDP ports.
    If you are not using a TCPIPSVR.DAT file to point the client to a specific server, all firewalls, security software, and routers must be set up as unblocked incoming and outgoing UDP ports to allow UDP communications between client and server.

Q. Does the Serial port dongle require the installation of specific drivers?

A. Serial port keys communicate with the application using standard RS232C prototcols, so no driver software is required. The API calls used for serial devices use the same parameters and return the same values as those for USB or parallel devices. However, since the application communicates directly with the key, the commands are passed using a string of serial characters beginning with the command codes FS (0x1C), SUB (0x1A), FS (0x1C), SUB (0x1A), which tell the key that the following information should be processed by the key rather than passed through.

For more information, please see the "Serial Port Devices" section beginning on p. 87 of our User's Manual.

Q. How do I use the install utility?

A. In order for the dongle to be recognized the KEYLOK II device driver and supporting files must be installed. The easiest way to install all of the required KEYLOK files is to use the KEYLOK II INSTALL Utility (install.exe). You can download the latest version of the install utility by clicking here.

INSTALL.EXE is located on the CD that you received with your evaluation kit or first order. The file is located in the Send to End-Users directory.

You can run install.exe either from its own window or from a command line. To run it from its window, simply double-click on the file. When the Security Key Installation window opens, click on the check box for the type of dongle you are using. If you want to install a network server or client, select the Server or Client radio button.

You can also use install.exe to uninstall all drivers and other dongle-related software. This is useful when a USB dongle has been plugged in before the drivers were installed, or if you need to update a driver installation. For detailed instructions on how to uninstall and reinstall the drivers, click here.

You can run install.exe from a command line by doing the following:
1) Start the 'INSTALL.EXE' file using your preferred technique (e.g. DOS prompt, Windows RUN, launched by Install ShieldWISE, etc.) and specify one or more of the following command line parameters:

Command Line Parameters
"/" or "\" or "-" Delimiter. A space is required before each delimiter and options cannot be combined (i.e. '/QN' is illegal, but '/Q /N' is legal).
/Q Runs in quiet mode (i.e. no messages displayed). 
/NB Install USB TCP/IP network server software to allow remote access to the dongle
/NP Install parallel port TCP/IP network server software to allow remote access to the dongle
/U Uninstall. Proper operation requires that all protected programs be terminated and all USB dongles be removed.
/A Install both USB and parallel drivers
/P Install parallel port drivers
/B Install USB port drivers
/C Set up 'Client' paltform for remote access to dongle

Examples:
INSTALL /B - Installs files for USB port dongles only
INSTALL /B /Q - Installs files for USB port dongles only and displays no messages
INSTALL /P - Installs files for Parallel port dongles only
INSTALL /A - Installs files for USB and Parallel port dongles

Q. How can I remove all drivers and dongle-related software?

A. You can use the driver installer, install.exe, to remove all drivers and dongle-related software. To do so, do the following, making sure that you are logged in as an Administrator on the machine:

  1. Remove all dongles from the system.
  2. Run install.exe. When the opening screen comes up, make sure that the "Uninstall" checkbox is selected. Click OK.
  3. When the uninstall displays a message saying that is has finished, all files have been removed.
    To reinstall the drivers after an uninstall, do the following, making sure that you are logged in as an Administrator on the machine:
  1. Reboot the system.
  2. Re-run install.exe. Select the USB checkbox.
  3. Make sure the install has displayed a message saying that it is finished before you attach the dongle. When you do so, the Windows New Hardware wizard should start and ask to install the drivers for a USB Security Protection device. Accept all the defaults and let the wizard finish.

Q. What is the process to install a USB dongle?

A. It is very important that the USB dongle not be attached to the computer until after the INSTALL utility has been run. This is done to copy the required device driver and .inf file to the target system. If the USB dongle is attached prior to running the INSTALL utility you will need to uninstall the default drivers that Windows installs and then reinstall the KEYLOK USB dongle drivers.

To install a USB dongle, run install.exe and check the USB checkbox. When the installer displays a message saying that it has finished, attach the USB dongle to any USB port. The Windows Found New Hardware wizard will then run. For more information click here.

NOTE: For USB installations the INSTALL utility does not make any modifications to the registry so you can copy the USB driver files directly to the appropriate directories if you want to install without using install.exe.

Q. What is the process to install a parallel port dongle?

A. Begin by attaching a KEYLOK dongle to the parallel port on the computer. The presence of the KEYLOK is required in order to 'start' the device driver.

To Install the Parallel dongle, run install.exe and select the Parallel checkbox.

NOTE: Modification of the NT/2000/XP system registry requires that a person with Administrator permission run the utility.

Q. How do I install the dongle using WISE install?

A. REM USB Only Install

REM Flags USBINSTALL and PARALLELINSTALL set by a checkbox in a dialog

if USBINSTALL = 1 and PARALLELINSTALL <> 1 then
Display Message "DO NOT attach the USB Dongle until the installation is completed."

Execute Installed Program Install.exe Command Line /B (actionInstallUSB)
End

Q. How do I install the dongle using Install Shield?

A.  function OnFirstUIBefore()
string szProgram;

string szCmdLine;

begin
MessageBox ("Please connect the dongle to the parallel port - Press OK when done.", INFORMATION );

szProgram = SRCDIR + "\Extras\\Install.exe";

szCmdLine = "/Q";

LaunchAppAndWait( szProgram , szCmdLine, NOWAIT );

return 0;
end;

Q. Why does the wizard appear when the dongle is attached to the computer?

A. The following wizard will be displayed the first time the dongle is attached to any USB port. The wizard is used by Windows to perform the necessary system-level changes to activate the drivers. To run the wizard, simply press "Next" on the first dialog box.

To complete the installation click “Finish”.

If this wizard does not appear or there is an error when installing this device, please click here

Q. The dongle was attached prior to installing the driver?

A. If the dongle was attached before the driver files were installed, please uninstall using the install utility.

Q. The application terminates several seconds after call to security dongle, sometimes with a GPF?

A. This is nearly always caused by forgetting to copy the anti-debugging utility PPMON.EXE to the windows\system or winnt\system32 directory. This utility is only required for 32-bit applications that perform a call to KEYBD with an argument of zero to launch the anti-debugger.

Another cause (reported on one occasion) involved a conflict with an anti-virus utility. The virus scanner was set to scan each executable program as it was loaded. The scanning process was in progress at the time the security module was called to check for the dongle. The anti-debugging utility (PPMON.EXE) detected the virus-scanner as a debugger and therefore terminated the application.

Q. Check for KEYLOK failed (server)?

A. This information can be found on our Networking FAQ page.

Q. I Have The connector pins facing toward the computer and the dongle does not work?

A. Remove the dongle from the (Serial) port and reinstall on the printer port.
NOTE: Serial port voltages may damage the dongle.

Q. What is the process to install a parallel port dongle?

A. Begin by attaching a KEYLOK dongle to the parallel port on the computer. The presence of the KEYLOK is required in order to 'start' the device driver.

To Install the Parallel dongle, run install.exe and select the Parallel checkbox.

NOTE: Modification of the NT/2000/XP system registry requires that a person with Administrator permission run the utility.

Q. What communications parameters do serial devices require?

A. To communicate with serial keys, set the port to (19200,8,n,1):

  • 19,200 BPS
  • 8 data bits
  • no parity
  • 1 stop bit

Q. How can I remove all drivers and dongle-related software?

A. You can use the driver installer, install.exe. to remove all drivers and dongle-related software you should do the following. Sample answer. Sample answer.

Q. What do I need to do to use both parallel and USB dongles?

A. API Interface

The API calls for the USB and Parallel port dongles are exactly the same.

Interface Files
The interface files for the USB and Parallel port dongles were updated on 12/20/00. If the interface files you are using (KFUNC32.OBJ or KL2DLL32.DLL) are dated on or after this date no changes are required. Contact technical support for updated OBJ and DLL files.

In order for the dongle to be recognized the KEYLOK II device driver and supporting files must be installed. The easiest way to install all of the required KEY-LOK files is to use the KEY-LOK II INSTALL Utility.

1) Start the 'INSTALL.EXE' file using your preferred technique (e.g. DOS prompt, Windows RUN, launched by Install Shield or Wise, etc.) and the following command line parameter.
/P Parallel port installation
/B USB port installation

This utility copies the required files based on the operating system It also runs the utility KEYSETUP.EXE to initialize Registry entries, if required.

Example:
INSTALL /B /P - Installs files for USB and Parallel port dongles

Q. How do I install drivers on a 64-bit system?

A. Our install utility, install.exe, will automatically detect a 64-bit operating sytem and install the appropriate 64-bit files.

NOTE: We have 64-bit support only for USB devices on machines using AMD or newer Intel Itanium 2 or Xeon processors. We do not support older Intel Itanium processors.