QTerm 7.0

The 7.0 version of QTerm brings a new look and easily accessible function panels which can be permanently displayed (pinned) or can be automatically hidden and only displayed when moused over. Mutiple frame windows are also supported with one or more terminal windows in each frame. This allows you to easily take advantage of multiple monitors.

If you are interested in trying out the new version please click here to download the software

Click New to close.





The frequently asked questions and answers below refer to the current QTerm base (including Web-UTS and Web-T27) except where an older product base is specifically mentioned.

How long does it take to install and configure QTerm ?
     QTerm can be installed and configured in less than five minutes.
Do I have to purchase an upgrade to QTerm so I can display Mapper graphics ?
No! QTerm supports Mapper graphics without the need to upgrade to a more expensive product. Web-UTS also supports Mapper graphics
Can Web-UTS be installed on a local PC or does it have to be installed on a Web Server ?
Web-UTS was designed to be installed on a Web Server, however it can alternatively be installed on a local PC. When Web-UTS is installed on a Web Server you have more centralized control over configuration options and distribution of the latest versions of software which you lose when installed on local PCs.
Do you offer training classes ?
Yes, for a complete schedule of our training classes, please contact Quickware.
Why do I end up with a red X when loading Web-UTS or Web-T27 under Internet Explorer ?
On loading the web page under Internet Explorer if you see a red X in the top left corner of the screen this indicates that Internet Explorer has not been able to load the OCX properly, probably due to an out of date or missing dependent system DLL.
To get more information, follow these steps:
IE Security Settings
Ensure that the Security level is set to Medium for your zone.  Also remove Quickware from the Trusted Publisher list (you can always click on "always trust Quickware..." later).  These actions will cause a prompt to appear before loading the cabinet files from the web server. The whole point of this is to prove that the first download stage (copying the cabinet files) is being performed. 
Code Download Error Log Viewer (CDLLOGVW.EXE)
The Microsoft program CDLLOGVW can be used to capture more information about download problems.  You must be running at least version 4 of Internet Explorer in order to use CDLLOGVW. 
Run Internet Explorer and attempt to load the web page and, after you see the red X, run CDLLOGVW.  It will display one or more entries that include the CSLID of the object that failed to load.  Double click on each entry to see the error details.  Make sure the date and time match your download attempt and check the error code.
The 3 problem areas that we have seen reported by CDLLOGVW are when a remote file cannot be found and when the control (ocx) fails to register because of a missing dependency or out of date system DLL. 
  • file not found: log shows that the file could not be found
  • missing system DLL: appears to be logged as error code 800C0005 (INET_E_RESOURCE_NOT_FOUND).
  • out of date system DLL: error code 8007001F (A device attached to the system is not functioning) has also been seen when registration fails due to an out of date system DLL.
Why do I see a problem with Web-UTS or Web-T27 on Win2003 and IIS 6?
There is an issue with Windows Server 2003 that includes IIS 6.0.  It appears that the types of files that may be served up is now limited by configuration.  You can test this by entering the URL of the config file in the address bar of a browser ( and pressing enter.  Even this simple request fails on Win2003 unless you add to the list of allowed MIME types, as follows:
Open up the IIS properties for Web-UTS or Web-T27:
click on MIME Types and add cfg...
  Configured Settings
How can I set up the keyboard to match my previous UTS emulator (PEP/Step or Chi) ?
In QTerm, we have 3 keyboard layouts. Layout 1 is our keyboard map, Layout 2 corresponds to PEP and Layout 3 corresponds to CHI.

In QTerm 3.8, we included keyboard map files which you may import. These files are named STEPkbd.txt, and LINKkbd.txt. Please note that in order to map the keyboard like the Chi keyboard there is also a set of macros named LINKmac.txt. These files may be imported using the import keys on the appropriate configuration pages, that is either key mapping or macros. The LinkMac.txt will be installed in your 4th set of macros keys, but it will overwrite all macros currently in use, so make sure you export your macros before you import the file LinkMac.txt. Then you can cut, copy and paste the current macros into the text file LinkMac.txt.

There may be small changes you would like to make to some keys to exactly match your old keyboard map. See the on-line help for complete instructions on mapping a key.
When configuring a 2200 host entry how do I know whether to choose TCP or DTP-TCP transport ?
The TCP transport identifies a connection that terminates at a TCP stack in the host. This is either via an HLC or via the DCP configured as a router or via newer levels of Telcon that accept the TP0 protocol. The TCP-DTP transport specifies the older connection protocol over TCP that was specific to Telcon. If unsure, we suggest configuring the TCP transport and, if that doesn't work, try the TCP-DTP protocol.
I cannot connect more than 3976 sessions on my AccessServer ?
There is a Microsoft tcp/ip stack parameter that restricts the maximum ephemeral port to 5000.  Take away the 1024 "well known ports" and that leaves 3976.  You can easily increase the number of available ports by following this article.

Unable to Connect from TCP Ports Above 5000

Why is my SOE (Start of Entry) character displayed as a percent (%) sign ?
Because the QTerm TrueType font is either not installed or has been installed in a directory that is not in your main search path. The font (QTerm.ttf for UTS and QTermT27.ttf for T27) contains the special terminal characters such as Start of Entry for UTS and field markers for T27.
It looks like QTerm is running, but I don't have a terminal screen. What could it be ?
Check that your config file has not been closed. Under the File Menu on the main menu bar, if the option Open/Config is available, then somehow your config file was closed. Choose Open/Config, select your config file (the default name is "config.cfg") and your terminal screens will reappear.
Why is the right half of the screen blank ?
If, for some reason, the config settings file specifies a non-existent font then Windows may respond to the QTerm font request with a proportional font. In this case the regular spacing of characters is destroyed and the slop area is what is seen on the right hand side of the screen. Simply select a fixed width font (eg Courier New) to correct this.
My terminal screens have been dragged off the main window so that I can't see the title bar, what do I do?
Any time you want to return to the original sizing of the terminal screen, tile the windows (Window/Tile, or Tools/ Tile Windows under 3.8). That resets the terminal screens.
Do I have to close a connection before opening another one ?
No, QTerm will automatically close the current session first. Also, note when you exit QTerm it will close all active sessions.
Why are my QTerm 4.1 toolbars transparent?
This is due to a known Windows problem that is fixed by updating the Windows dll, 
comctl32.dll. Please contact Quickware for more information.
Can I still use $$OPEN and $$CLOSE ?
Yes you can but you might want to experiment with the menu commands or configure the Terminal/Startup settings to connect at startup or to connect on pressing transmit.
What are those "10000" errors I see (eg 10061) ?
The 10000 errors are defined by Winsock interface, which are returned after making calls to the TCP/IP stack.  QTerm interprets most of the frequently encountered Winsock replies.
See Winsock error codes for more description.
10009 WSAEBADF  Bad File number.
10013 WSEACCES  Permission Denied.
10014 WSAEFAULT  Bad Address.
10022 WSAEINVAL  Invalid Argument.
10024 WSAEMFILE  Too many open files.
10035 WSAEWOULDBLOCK  Operation would block.
10036 WSAEINPROGRESS  Operation now in progress.
10037 WSAEALREADY  Operation already in progress.
10038 WSAENOTSOCK  Socket operation on nonsocket.
10039 WSAEDESTADDRREQ  Destination Address required.
10040 WSAEMSGSIZE  Message too long.
10041 WSAEPROTOTYPE  Protocol wrong type for socket
10042 WSAENOPROTOOPT  Protocol not available.
10043 WSAEPROTONOSUPPORT  Protocol not supported.
10044 WSAESOCKTNOSUPPORT  Socket type not supported
10045 WSAEOPNOTSUPP  Operation not supported on socket.
10047 WSAEAFNOSUPPORT Address family not supported by protocol.
10048 WSAEADDRINUSE Address already in use.
10049 WSAEADDRNOTAVAIL Cannot assign requested address.
10050 WSAENETDOWN Network is down.
10051 WSAENETUNREACH Network is unreachable.
10052 WSAENETRESET Network dropped connection on reset.
10053 WSAECONNABORTED Software caused connection abort.
10054 WSAECONNRESET Connection reset by peer.
10055 WSAENOBUFS No buffer space available.
10060 WSAETIMEDOUT Connection timed out.
10061 WSAECONNREFUSED Connection refused.
10065 WSAEHOSTUNREACH No route to host.
 How about the HTTP Error Codes?


Error Message


100 Continue
101  Switching Protocols
200  OK
201  Created
202  Accepted
203  Non-Authoritative Information
204  No Content
205  Reset Content
206  Partial Content
300  Multiple Choices
301  Moved Permanently
302  Moved Temporarily
303  See Other
304  Not Modified
305  Use Proxy
400 Bad Request The request could not be understood by the server due to incorrect syntax. 
401  Unauthorized User authentication is required.
403   Forbidden The server understood the request, but is refusing to fulfill it.
404  Page Not Found The server has not found anything matching the Request-URI.
405 Method Not Allowed The method specified in the Request-Line is not allowed for the resource identified by the Request-URI. 
406  Not Acceptable The server cannot generate a response that the requestor is willing to accept.
407 Proxy Authentication Required  This code is similar to 401 (Unauthorized), but indicates that the client must first authenticate itself with the proxy. 
408  Request Timed Out  The server stopped waiting for a client request.
409  Conflict The request could not be completed due to a conflict with the current state of the resource.
410  Gone The requested resource is no longer available at the server and no forwarding address is known. This condition is similar to 404, except that the 410 error condition is expected to be permanent.
. 411 Length Required The server requires a content-length in the request
412 Precondition Failed The precondition given in one or more of the request-header fields evaluated to false when it was tested on the server.
413 Request Entity Too Large The server is refusing to process a request because the request entity is larger than the server is willing or able to process. 
414  Request URL Too Long The server is refusing to service the request because the Request-URI is longer than the server is willing to interpret.
415 Unsupported Media Type The server is refusing to service the request because the entity of the request is in a format not supported by the requested resource for the requested method. 
500  Server Error  Internal Web server error
501 No Server Function not implemented in Web server software 
502  Server Overload Bad Gateway; a server being used by this Web server has sent an invalid response.
503 Service Unavailable Service unavailable because of temporary overload or maintenance. 
504  Gateway Timeout A server being used by this server has not responded in time.
505  HTTP Version Not Supported The server does not support the HTTP protocol version that was used in the request message.
And those other error codes?

There is a list of negative codes which are Quickware status codes.

  -702 table is full   
  -703 timed out on sending data because a previous message was still in the process of being sent
  -706 bad reference value; a reference to a connection is invalid  
  -707 bad function requested; the function code requested is invalid  
  -708 resource not available, typically this means that memory could not be allocated for a message buffer or a required table
  -709 cannot complete operation; typically cannot send message because not connected or blocked
  -710 duplicate entry; typically a name is already in use  
  -711 host name not configured  
  -712 terminal not disconnected  
  -713 terminal not connected  
  -714 open connect timed out  
  -716 max users active  
  -721 host rejected connect request  
  -722 host aborted connection  
  -801 User is stopped, message rejected   
  -802 Host output blocked, data message discarded    
  -803 Received data message from user while waiting for session status, message rejected
  -804 Error on send to host, message discarded   
  -805 Connection not allowed  
  -900 Bad message offset in message header  
  -901 Bad message size in message header  
  -902 Bad signature in message header  
  -903 Bad exception  
 I am trying to print a large file and Windows print manager tells me that it cannot accept any more print files, why ?
Under Setting/Terminals/Printer, check that you have not selected the option Close Print File when Form Feed Character Received. That option causes QTerm to send a separate print job whenever it receives a form feed. Instead select one of the other options, such as "print on timeout" or "print on number of pages".
 Can I control the printer directly from the host ?
 Yes you can, but please approach this with caution. QTerm makes full use of the OS printing architecture for all print modes other than raw or direct and can be used to print to a local printer or a networked printer with flexibility and ease.

To control the printer directly from the host you must configure a QTerm screen's printer settings to Raw Mode or Direct Mode and send messages from the host to this screen. These messages must contain the printer control sequences necessary to control the particular printer. As you can see, if QTerm is reconfigured to use a different printer then the host will be unaware and still send the same print control sequences which may not operate properly on the different printer. Hence take care !

Print control sequences usually contain escape sequences, including the <esc> character. This cannot be sent to the printer via the screen but you can use the Printer Translate table to nominate an unused character to be translated to <esc> before being sent to the printer. Alternatively, on a UTS session you can send the sequence <esc><[> to generate an <esc> character on the screen. Another option is to configure a terminal screen as a Passthru Printer which sends all data to the printer, bypassing the screen interpretation dependency.