
		                    Vtcp for TIPTOP 版新增功能说明
        		           ================================


V7.1a [2009/11/30]

 * 完成 Vtcp 可支持 Windows 7 的 32 及 64 bit 版本.

 * config 可判别 Windows 7 的 32 及 64 bit 版本.

 * Windows 7 上使用应注意事项: UAC (User Access Control) 应设成关闭以避开过度的权限限制. 


V7.0e [2008/10/22]

 * 解决 vtcp for tiptop utf8 版 telnetw & ssh 在 7.0d 无法正常显示及列印 utf8 码问题.


V7.0d [2008/09/02]

 [显示] 

 * 新增一功能, 在 telnetw / ssh 连线主机时, 可设定 title bar 上不显示 ip address (或 hostname).

   使用此功能必须在 config 档 (telcnf.tab) 内新增一个设定项 dsp_ip.

   若 dsp_ip=0, 则可使 telnetw / ssh 的 title bar 上会在连线主机时, 不显示 ip address (或 hostname)
   dsp_ip=1, 或不写 (default) 时, 则会显示 ip address (或 hostname)

 [打印] 

 * 修改 lpd32.new.exe 成可以支援先送出 control file 再送出 data file 的 print job

 [其他]

 * dtctcp.tab 加入一个叁数 lpdquit=1 可控制在 lpd32.new 结束时, 不出现 confirm 问句.


V7.0c [2008/01/11] 

 [打印] 

 * 打印 gb2312 表格码连线时, 新增支援另一组表格码.

   两组 gb2312 表格码为:
     0xa9a5, 0xa9a7, 0xa9b3, 0xa9b7, 0xa9bb, 0xa9bf, 0xa9c7, 0xa9cf, 0xa9d7, 0xa9df, 0xa9ef
   及
     0xa1aa, 0xa9a6, 0xa9b0, 0xa9b4, 0xa9b8, 0xa9bc, 0xa9c0, 0xa9c8, 0xa9d0, 0xa9d8, 0xa9e0


v7.0b [2007/11/07] 

 [其他] 

 * 解决 telnetw / ssh 的 autologin 功能, 若在 autologin batch 档 auto.cmd / autos.cmd 内
   不使用 .loginwindow 指令而改用 .cmd 的 open 给固定的连线主机 ip address 无法连入成功的问题.
   [2007/10/31]

 * telnetw / ssh 的 "关於" 对话方块盒内, 加入显示被授权者的资料.并将非 UTF8 版中文化.
   [2007/09/17]

 * 出货时, config 档 (telcnf.tab) 内加入 :

   1) def_pglin=66, 定义每种 printer driver 每页行数 default 为 66 行.
   2) utf8_mod=1, 定义 telnetw / ssh UTF8 版, 用宽字型模式处理功能.
   [2007/09/04]


v7.0a [2007/08/30] (未 release, 仅供测试用)

 [打印] 

 * 新增 UTF8 码宽字型模式处理功能.

   当列印 "非汉字(2bytes宽), 英数字及符号" 的 UTF8 码时, 改以整串字符串印出不上行对齐, 
   以解决非汉字字符过宽无法完整印出问题.
 
   若字符串实际印出宽度不足所占字符宽度时, 则仍空足所占字符宽度. 
 
   例如: 一串 UTF8 码字符串中有 8 个字, 实际印出只占 6 个字符宽, 後方有 3 个 space 後, 为另一字符串.
         则实际印出时, 印出字符串占 6 个字符宽, 後面空 5 个字符宽度後, 印下一个字符串.
 
   若字符串为宽字型且所占字符数的宽度不足完整印出时, 以後方的 space 来补.
   但若後方 space 空间仍不足, 则与下一字符串(或字符)间, 至少空一个字符的 space.
 
   例如: 一串宽字型 UTF8 码字符串, 内有 8 个字, 但实际印出占 10 个字宽. 後方有 5 个 space 後, 为另一字符串.
         则实际印出时, 8 个字的 UTF8 码会占 10 个字宽印出, 之後则只空 3 个字符宽度.
 
   若後方只有一个 space 字符. 则实际印出时, 8 个字的 UTF8 码还是会占 10 个字宽印出, 之後还是空一个字符宽度.
   所以这个部份从 space 起, 後面的资料会全部向右 shift 无法上下行对齐.

   >> 在 config 档 (telcnf.tab) 内新增一个设定项 utf8_mod,
      若 utf8_mod=1, 表打印资料为 UTF8 码宽字型时, 以宽字型模式处理 

 * 新增粗体及斜体字功能. (未完整测完)
 
   ~FB; 设定印粗体字.
   ~FI; 设定印斜体字.
   ~FN; 设定印正确字. (不印粗体及斜体字, reset ~FB; 及 ~FI; )
 
 * 以前过宽字型印出会被截掉, 为解决 前面 2 个问题 (及以前斜体字无法完整印出问题),
   改为过宽字型可与下个字重叠印出.

 [其他]

 * 7.0a 版起的 VTCP 程序, 无法与 6.0p 版以前的版本并用.

 * Vista 上使用应注意事项: UAC (User Access Control) 应设成关闭以避开过度的权限限制. 

 * Porting VTCP 可 for Vista32/64

 * kit 内容删除 dos 版, 只保留 Windows 版部份.

 * 此版主要程序为: Telnetw, Telnetw UTF8, Ssh, Ssh UTF8, Lprw, Lpdw, Lpdw (new),
                   Ftpdw, Usrpass, Config 及 Uninstall

 * 改版後, 改写安装程序, Config 并加入 Uninstall, Lpdw (new)
   Lpdw (new) 为 lpd32.new.exe 安装时不会放入程序集的 VTCP group 内.
   lpd32.new.exe 功能与 lpdw(lpd32.exe) 相同, 但解决吃 cpu 问题, 集合所有设定介面成一个介面,
   及新增主画面可即时显示连线讯息.

 * 新增可以 default 设定自动安装方式; 安装方式只要在 kit 内, or big5, gb 子目录下激活:

   .\setup -install -s=company,serial,key -c=N

   即可自动安装. 

   其中
   -s= 後面的 company 为客户公司名称, serial 为 VTCP 序号, key 为密码.
       若 company 内容有 space, 必须将 -s=company,serial,key 整个字串的前後用 " 括起来,
       例如: "-s=abc co.,test1234,xx1234567890"
       否则 -s= 後面完全不可以有 space

   -c= 後面的 N 为数字 1 或 0, 1 表设显示讯息为中文, 0 表设为英文.
       只给 -c= 或不传入 -c=, 表用系统 default 值.

   >> 注意: 自动安装功能, 必须同时传入 -install 及 -s= 两叁数, 否则无效.
   >> 使用自动安装时, default 的 Tiptop Type 为 TIPTOP GP, Shortcut Type 为 Normal (Telnet-GUI)
   
 * telnet32.exe / ssh.exe 内, "列印设定" 对话盒内

   1) 新增一显示栏位 "每行最多可印 n 个半形字" 英文讯息为 "At most n character(s) per line"

   2) 显示栏位 "每页最多可印 n 行" 的英文讯息, 由 "n line(s) per page max" 改为
      "At most n line(s) per page"

 * 删除 telnet32.exe / ssh.exe 内, "列印字型" 对话盒内可选用非 fixed pitch 的字型. (例如: 新细明体)
   原因是 terminal mode 的列印英数及汉字时, 无法用非 fixed pitch 字型做到上下行字与字对齐功能.


v6.0p [2007/02/13 ~ 2007/03/02]

 [显示]

 * 解决 telnet32.exe / ssh.exe 在画面 scroll up 时, 会有白字闪动的问题. [2007/03/02]

 [打印] 
 
 * 解决 local 打印时选择打印范围不是从第一页起印时, 若打印资料有 barcode 或印图时,
   会算错页数的问题. [2007/02/13]

 [其他]

 * 修改 GUI mode 登入画面中的 "连线" 按钮. 在按下时, 自动改为 disable. [2007/03/02]
 

v6.0o [2007/01/04 ~ 2007/01/22]

 [其他]

 * 解决在 XP Professional SP1, XP Home Edition SP2, Win2000 Professional SP4 下,
   印某种报表会发生英数字不一致问题.

   并在 dtcwcnf.tab 内再加入 chset=136, weight=400, italic=0 等设定.

 * 新增在开启 "打印设定" 或 "打印与记录档" 对话盒 时, 显示讯息框及讯息 :

   "正在建立 Windows 打印环境, 请稍候..." 

   以解决开启对话盒时因读取 Windows 打印环境资料会使对话盒较慢出现问题.


v6.0n [2006/12/25]

 [打印] 
 
 * 新增一组倚天指令 ~FF0; ~FF1; 
   以控制在收到 FF (Form Feed, 0x0c) 时, 是否将其後紧接的 LF (Line Feed, 0x0a) 或
   CR (Carriage Return, 0x0d) + LF 吃掉不处理.

   ~FF0; 表不吃掉紧接的 LF 或 CR + LF 
   ~FF1; 表吃掉紧接的 LF 或 CR + LF 
   
   未设定时, default 同 ~FF0; 下指令 ~I; 不会 reset 回 default 值. 必须以 ~FF0; 设回 default

   另外, 在 config 档 (telcnf.tab) 内新增

   et_ff=0 或 1
	
   此设定可以改变 default 设定值. et_ff=0 同 ~FF0; et_ff=1 同 ~FF1;

 * 解决 telnetw / ssh 打印 UTF8 码时, 若下的倚天指令内有 0x7f 以上的 UTF8 码时, 会有异常或当掉问题.    

 [显示]

 * telnetw / ssh 缩最小时放萤幕右下角功能, 改为可以一个 flag 设定是否要缩最小放萤幕右下角;
   config 档 (telcnf.tab) 中新增叁数:

   minhide=0 或 1 

   1 或没写为 default 表缩最小时放萤幕右下角, 
   0 表缩最小时不放萤幕右下角, 即同 6.0e 版(不含)以前的作法.

 [其他]

 * "打印与记录档" 对话盒内的 "使用打印机" 设定栏, 新增 off / on 两选项:
   选择 on 选项同旧版之设定,
   选择 off 选项则表示不使用 "使用打印机" 栏後所选的打印装置, 而改使用 Windows 上的默认打印机.

   此设定项可透过 menu bar --> [设定] --> [储存] 做永久储存.


v6.0m [2006/11/06]

 [打印] 
 
 * 解决 telnetw / ssh 打印 UTF8 码时, 无法正确打印部份泰文的问题 (属於 complex scripts(混合字)的
   unicode 部分的泰文)
   (terminal mode 的显示则暂不处理, 保持现状)


v6.0l [2006/08/28]  (未 release, 仅供测试用)

 [打印]

 * UTF8 版 telnetw, ssh 新增一组倚天指令 ~FL2; ~FL1; 
   以控制印 UTF8 码文件时, 表格码 (0x2500 ~ 0x257f) 以全角字或半角字印出.

   ~FL2; 表以全角字印出 
   ~FL1; 表以半角字印出
   
   未设定时, default 以半角字印出. 下指令 ~I; 将会被 reset 回 default 值.
   [2006/08/28] 
   
 * vtermcmd.tab 新增一组指令:

    pmode=\E[?L%dM

   以指定打印模式.

   说明: %d 表指定的打印模式, 相当於在 telnetw / ssh 的 menu bar --> 设定 --> 打印与记录档 内设定 "打印模式"

         设定值为: 0=文字, 1=倚天, 2=透通模式

         但在 UTF8 版下, 有效设定值为 0, 1; 无法设为 2 的透通模式.
   [2006-09-27]  

v6.0k [2006/08/09]

 [打印]

 * 解决 telnetw/ssh/lpdw 在部份 printer driver 内指定打印份数, 横印无效问题.

 * 解决 telnetw/ssh/lpdw 在部份 printer driver 下使用倚天指令 ~PP; (postrait 直印) ~PL; (landscape 横印) 
   无效问题.

 * 解决 telnetw/ssh 在部份 printer driver 下, 以 windows 打印对话盒内指定打印份数, 横印, paper size 无效问题.

 * 解决 telnetw/ssh 在部份 default 无边界的点阵打印机 driver 并设定为 "跳页印出" off 无效问题.
   但最後一页的资料行数必须大於等於 printer driver 的最小 paper size 高度的可印行数.
   否则, windows 会视为无效, 仍以原本的 paper size 的高度跳页.

   例如: 在 win2000 pro 下, Epson LQ1000 的最小 paper size 高度限制为一英寸. (即 default 设定的 6 行)
	 所以最後一页欲印出资料的行数所占的纸张高度至少要一英寸.
         (paper size 会因不同 printer driver 有不同限制, 除最小高度还有最大高度及宽度限制.
          如: 不支援 A3 的 printer, 则无法使用 A3 的 paper size)
          但这部份应可解决之前中一刀无效的问题.

 注: 以上解决问题, 若 printer driver 本身不支援, 或打印机本身不支援则无解.

     目前测 LQ1000, HP LaserJet 1100, 5100 PCL6 均 ok.

     有问题的 printer driver 多为 LaserJet PCL6 的版本,
      ex: Xerox PC 400/350/250 PCL6, Sharp AR-235 PCL6, RICOH Aficio 1045 PCL6, RICOH Aficio 1035 PCL6
   

v6.0j [2006/07/13]

 [打印]
 
 * 倚天打印指令中,  印 barcode 的 dspchar 叁数, 新增了 A a B b C c 六种设定值,
   可供欲印 code 128 者可选择在印 barcode 图形或字串时, 不含检查码.
   并修改了说明文件 no2.htm 内 barcode 指令说明(以红色字标示)

   例如: 原使用指令: ~BC047011301B15XXC157264JA0005;  
         打印结果是 barcode 图形及显示字串均含检查码.

         1) 若欲改为图形及显示字串均不含检查码, 则需改成:

            ~BC047011B01B15XXC157264JA0005;

         2) 若欲改为图形含检查码但显示字串不含检查码, 则需改成:

            ~BC047011C01B15XXC157264JA0005;


v6.0i [2006/06/22]

 [打印]

 * 修改打印某些 Unix 端 (如: IBM-AIX 5.3) 图档不成功问题.


v6.0h [2005/11/18 ~ 2006/03/23]

 [打印]

 * 修改打印图档指令中, 若档名前後有多剩的 space 自动去掉. [2006/03/23]

 * 新增印远程 Unix / Linux 的图档功能.[2006/03/17]
   
   1) 欲使用此功能, VTCP 安装目录下的 config 档(如: telcnf.tab) 内, 必须设定 vprtsvr=1
      而图档所在的 Unix / Linux 端必须有服务程序, 其 protocol 同 VPrint 所附的服务程序 VPrintSvr.c
   
   2) 指令格式同之前的 ~GPxxx; (xxx 为指定图档档名)

      指定图档 path format:

        host(或 ip address):port/图档档名(或相对於指定目录下的 path)

        host 与 port 间必须以 : (冒号) 隔开但不可以空格.
        port 与 图形档名间必须以 / (slash) 隔开但不可以空格.

        host 表图档所在的远程主机名称或 ip address
        port 表图档所在 Unix/Linux 端, 服务程序(如: VPrintSvr) 使用的 port number.
 
        例一: ~GP192.65.1.1:5000/abc.jpg 
  
              表示 192.65.1.1 主机上的服务程序执行时, 指定 port 为 5000.
              并要求印出 192.65.1.1 主机上, 服务程序所在目录下的 abc.jpg 图档.
              若服务程序所在目录为 /usr/local/vtcp/dibsvr, 则会将 /usr/local/vtcp/dibsvr/abc.jpg 印出.

        例二: ~GP192.65.1.2:12345//dib/abc.jpg 
     
              表示 192.65.1.2 主机上的服务程序执行时, 指定 port 为 12345.
              并要求印出 192.65.1.2 主机上, /dib 目录下的 abc.jpg 图档.

        例三: ~GP192.65.1.3:34567/../dib/abc.jpg 
  
              表示 192.65.1.3 主机上的服务程序执行时, 指定 port 为 34567.
              并要求印出 192.65.1.3 主机上, 相对於服务程序所在目录下的 ../dib/abc.jpg 图档.
              若服务程序所在目录为 /usr/local/vtcp/dibsvr, 则会将 /usr/local/vtcp/dib/abc.jpg 印出.

 * 在 "打印与记录档" 对话方块内, 新增一个 "倚天打印指令的起始控制字元" 设定栏位.
   此设定栏位的功能, 相当於下倚天指令 ？~？; (第一个？是目前的打印控制识别码，第二个？新的打印控制识别码)
   
   设定值必须是内码为 16进位的 0x21 ~ 0x7e (即键盘可输出的英数字及符号), 但 ; (分号)及 space 以外除外.
   因为分号为倚天打印指令的结束字元.

   default 值为 ~ ("波浪" 符号, 或称 "漂" 符号)

   在实际打印时, 若在 "打印与记录档" 对话方块内, "倚天打印指令的起始控制字元" 栏位内的设定值不是 default 
   值 ~ 时, 会自动将 "倚天打印指令的起始控制字元" 改为新的设定值.
   直到下倚天的还原 (reset) 指令 I 时, 才会回复成 default 的 ~ 做为 "倚天打印指令的起始控制字元".
   [2005/11/18]
	
 [其他]

 * 解决在 Win98 SE 及 WinMe 下, 当 MS I.E. 在 task manager 内显示为 [没回应] 时, 
   telnetw 会无法开始及结束. 必须将 task manager 内没回应的 MS I.E. process 删除後才可恢复正常的问题. 
   [2005/12/16]

 * config 改为只有 windows 类别, 讯息显示及 LPD 放入启动 Group 三选项, 以适应新的 Windows OS. [2005/11/28]


v6.0g [2005/09/19]

 [打印]

 * 在 "打印与记录档" 对话方块内, "打印对话盒" 栏,

   1) 新增若点选 "Windows" 时, 
      显示以下讯息:

      "有些打印机驱动程序可能会导致打印异常,
       建议以 "只选打印机" 选项替代.
       如有问题请洽客服工程师."

      英文讯息为:

      "Some printer drivers may cause abnormal result.
       Strongly recommend select "Printer only" instead.
       Please contact customer engineer if needed."

   2) 选项显示顺序由原来的 off / Windows / 只选打印机 改为
      off / 只选打印机 / Windows.


v6.0f [2005/07/25 ~ 2005/05/17]

 [显示]

 * 解决简体中文版 config32.exe 在切换 language 类别成中文时, 会变成乱码的问题. [2005/07/04]

 [打印]

 * 解决在 180 dpi printer 下以 24, 25 字型打印底线时, 无法列出问题. [2005/07/25]

 * barcode 打印指令新增可设定为不计印出 barcode 图的高度. (作法同 ~GPxxx; (印图档) 的规格)
 
   barcode 打印指令 dspchar 设定值原为0 ~ 3, 现扩充为0 ~ 7.  即原来的0 ~ 3可分别对应到4 ~ 7.
   就是将原来的设定值加上 4 後, 其印出的 barcode 高度在跳页的计行时, 将不列入计算. 
   [2005/07/14]

 * 修正 6.0f 版(2005/05/17 ~ 5/30) 中 printer 可显示超过 50 个时, 引起无法更改
   "打印与记录档" 内的使用打印机设定值的问题 [2005/06/06]

 * 新增 EAN-13 barcode 打印功能, 印 barcode 指令规式为: 
 
   三种 barcode 开头指令   ~BL   ~BC    ~BI
      + width ( bytes)  + height (3bytes) + dspchar (1 byte, 值恒为 3) 
      + type (2 bytes, 值恒为 03)
      + length (2bytes, 值恒为 13) + 13 bytes 的 barcode 值
 
   规则与旧的 code39 standard, code39 full ascii & code128 三种 barcode 完全一样,
   只是将新增的 EAN-13 的 type 定为 03,
   并规定, 一定要显示, 即 dspchar 值为 3
   及规定 barcode 长度为 13, 小於 13 则不会产生图形, 大於 13 则只取 13 bytes,
   其他多出的 barcode 值将 ignore.
 
    ex: ~BC090020303134711967400197;
        ~BC090020303134711967200193; 

   [2005/06/06]

 * 安装目录下的 html\no2.htm 新增 EAN-13 barcode 打印指令的说明 [2005/06/06]

 [登录]

 * 解决因 5.6u 版(2003/07/31修改), 新增 gui mode auto login 可自定 port number 功能
   而改错的问题. 此问题会引起 telnetw/ssh auto login 使用的 default port 23/22 变成 0, 
   而无法 connect 到 telnetd/sshd 的问题. (gui mode login 不会有问题) [2005/6/8]

 * 修改 auto.cmd & autos.cmd 在 gui mode login 不成功时, 进入 text mode 前, 回复成不删除
   ntvdm.exe以利进入 text mode 时, 可以手动要求重新 connect 到 unix/linux [2005/06/06]

 * 允许 gui mode 下的 login 画面下的 password 为空. [2005/06/06]

 * 修改按下 gui mode login dialog box 内的 "确定" 键, 连线 login 後不成功
   且在出现 Timeout 讯息後, 清 login dialog box 栏位後,
   并在讯息列上显示 "您可按下 "取消" 钮进入 terminal 视窗".
   并在按下 "取消" 钮後, 显示 "进入 terminal 视窗?" 的确认问句後进入 text mode. [2005/06/06]

 * gui mode login 不成功进入 terminal 视窗时, 先暂时取消 autoclose 功能
   (disconnect 自动关闭 terminal 视窗功能)
   并在进入 text mode 时, 收到 FGLGUI=0 时, 将 autoclose 功能恢复. [2005/06/06]

 * 新增 gui mode login 不成功时, 可以选择进入 text mode 视窗功能.  

   即在 autoX.cmd 的 .loginwindow 指令新增第 4 个叁数, 若设为 1 表, 可选择是否进入 text mode.
   若无设定或非 1 时, 则同旧版功能 (不可选择是否进入 text mode. default 为不设定)

   ex: .loginwindow c:\vtcp\tiptop.bmp as: assword: FGLGUI=0 1
   [2005/05/30]

 * 新增 gui mode login 成功或 login 不成功可进入 text mode 视窗时,
   自动删除 task manager 内的 ntvdm.exe process, 以解决 tiptop 版在
   terminal server 下有太多的 ntvdm.exe process.

   即在 autoX.cmd 内 .kill 新增第 3 个叁数. 若第一个叁数无指定 full path, 且第 3 个叁数为
   nopath. 则自动将 task manager 内的 ntvdm.exe process 删除.

   ex: .kill NTVDM.EXE " " nopath
   [2005/05/30]

 [其他]

 * telnetw/ssh 在 menu bar [辅助说明] 下新增一个 "新增功能说明" 选项以显示各个版本所新增修改的功能.
   并自动区别 Windows 版本, 依繁体中文, 简体中文分别显示繁体中文档, 简体中文档.
   其他 Windows 版本下则不显示.
   [2005/07/05]

 * 解决 6.0e 版因新增 telnetw/ssh 缩最小时放萤幕右下角"功能, 引起无法使用按 [ALT] 键无法进入
   menu bar 的问题. [2005/07/01]

 * 新增 gui mode login 及 auto login 功能在 read unix/linux 资料时, 会同步显示在 telnetw/ssh
   画面内. [2005/06/28]

 * 解决所有 dialog box 内无法显示所有安装的 printer device 名称的问题 (超过 50 个时)
   (如: 只选打印机内的打印机 combobox, 打印设定内的适用打印机 combobox,
        打印与记录档内的使用打印机 combobox ... etc.)  [2005/05/17]


v6.0e [2005/05/11 ~ 2005/04/22]

 [显示]

 * 解决 UTF8 版使用 Courier New 选 越南文字集 (charset) 在英文版 windows 下,
   显示字形无法存取越南文字集, 打印时会变成非固定大小字型的问题.
   (繁中版 windows 无此问题) 英文 windows 下已与繁中版 windows 相同.  [2005/05/11]

 * menu bar [设定] 内新增 "打印字型" 选择. 此版起显示及打印字型分开.
   打印字型的 default 与显示字型相同. [2005/04/25]

 * UTF8 版 telnetw / ssh 此版起, 显示字型不可选非固定大小的字型 (non fixed pitch font)
   回复成与一起版相同. 固显示方式与 6.0c ~ 6.0d 不同.
   (但可用 Courier New 字型并选 越南文字集 (charset) 即可显示越南文)  [2005/04/25]

 * 解决 telnet columns 及 lines 数, 不论 unix 或 local 端修改, 不会告知对方的问题 [2005/04/22]

 [打印]

 * PrinTec pr-856 在 2000 / xp 无法打印问题的解决方法为 :  

   调整 PR-856 打印机本身叁数设定, 将打印机模式调为 EPSON 模式
   (default 为: PS55 模式 for IBM)

   并将打印机驱动程序改用 EPSON LQ1000 即可打印正常(含打印速度均OK) [2005/04/27]

 * 若有不常被客户使用的 printer, 可请客户先查看 printer 的使用说明书.
   看是否有与其他市面上常用的品牌相容, 但要先调整 printer 本身的 switch. 
   或请客户提供 printer 厂商技术资询电话以利询问. [2005/04/27]

 [其他]

 * 解决未安装 printer driver, 无法进入打印设定对话方块的问题. [2005/04/25]

 * 新增 telnetw/ssh 缩最小时放萤幕右下角的功能. [2005/04/25]

 
v6.0d [2005/03/17 ~ 2005/02/22]

 [显示]

 * 修改 utf8 版 telnetw/ssh focus 离开再回来时, 画面下有些字无法显示问题. [2005/02/24]

 * 解决 utf8 版 telnetw/ssh 在 vi 下有时会出现 escape code (终端机指令)的问题. [2005/02/24]

 [打印]

 * printer driver 测试报告 (旧版 6.0c以前(含), 新版 6.0d)  
  -------------------------------------------------------------------------------------------
  RICOH Aficio 1035 PCL6     新版无更改横向或直向打印 ok, 
			     新版更改横向或直向打印会当在 printer driver.

  			     旧版两种印法均在 printer driver 会产生不完整 printer job(无页数)

  SHARP AR-275 PS            新旧版均 ok.

  SHARP AR-M350 PCL5e	     新旧版均 ok.
  SHARP AR-M350 PCL6         同 RICOH Aficio 1035 PCL6

  SHARP AR-M450 PCL5e        新旧版均 ok.
  SHARP AR-M450 PS           新旧版均 ok.

  XEROX DC-400 PCL5e         新旧版均 ok.
  XEROX DC-400 PCL6(中文版)  新旧版均会 hung 在 printer driver 内.
  -------------------------------------------------------------------------------------------
  [2005/03/16]

 * 在 win98 下使用 Okidata ML 393C  driver output 到 printec pr856 的打印结果是正确的.
   测试比对, 得知 win2000 与 win98 上 Okidata ML 393C driver 处理方式不相同. [2005/03/11]

 * 发现 Xerox 台湾网站上 DC250/350/400 PCL6 (中文版) for XP/2000 的 driver 无法打印. 在 notepad
   及 word 上也一样. 有类似 hung 住现象. 必须到 driver 内将 print job 删除後才正常. [2005/03/14]

 [其他]

 * 解决 ssh 会 hung 住问题. [2005/03/11]

 * 解决 utf8 版 telnetw/ssh menu bar --> "edit" --> "copy" 时会当的问题. [2005/02/24]

 * 发现其他模拟软体在显示时, 只允许使用 fixed pitch font.
   打印时, 若选用非 fixed pitch font, 打印结束也是会重叠. [2005/02/24]

 * 放宽 local print 时在只选打印机 dialog box 内的打印机选项 combobox 的长度
   以解决打印机名称太长问题. [2005/02/22]

 * 放大 telnetw/ssh 内打印机选项 combobox 内可放打印机个数.  [2005/02/22]

 * setup.exe 修改安装时, 可选放桌面上的 shortcut. 

   共有以下选项及其会放的 shortcut:
 
   Normal (All)  : TOP-TXT, TOP-GUI, TOP-TXT(ssh), TOP-GUI(ssh)
   Normal (Telnet-GUI) : TOP-GUI
   Normal (Ssh-GUI) : TOP-GUI(ssh)
   UTF8 (All) : TOP-TXT(UTF8), TOP-GUI(UTF8), TOP-TXT(ssh-UTF8), TOP-GUI(ssh-UTF8)
   UTF8 (Telnet-GUI) : TOP-GUI(UTF8)
   UTF8 (Ssh-GUI) : TOP-GUI(ssh-zUTF8)
   All : TOP-TXT, TOP-GUI, TOP-TXT(ssh), TOP-GUI(ssh),
         TOP-TXT(UTF8), TOP-GUI(UTF8), TOP-TXT(ssh-UTF8), TOP-GUI(ssh-UTF8)
   default 为 Normal (Telnet-GUI).
   [2005/02/22]
 
 * 新增 config32.exe 及修改 config.exe.
   新版 config.exe 会自动执行 config32.exe. 并可正确侦测出 os 的版本.
   以解决 win2000-pro 英文版下无法正确侦测出 os 版本问题. [2005/02/22]
 

v6.0c  [2004-11-19 ~ 2004-08-18]

 [显示]

 * 解决 gb 中文下 telnetw 之 menu bar, dialog box 有乱码的问题. [2004-11-19]

 * big5 <--> gb 转码 table 新增 "  " 之繁简字对应. [2004-08-18]

 [登录]
 
 * 新增及修改自动 login 指令: 

  1.新增指令:

   .intN (N = 0 ~ 9)  : 可自定义10 个整数变数, default 值均为 0
    
    指令格式:

   .intN NNN
    ex: .int1    10
    表定义变数 int1 的值为 10

   .intN +NNN
    ex: .int1    +10
    表定义变数 int1 的值再加上 10, 
    (如继承前指令例子, 则 int1 值为 20 (10+10=20))

   .intN -NNN
    ex: .int1    -10
    表定义变数 int1 的值再减掉 10, 
    (如继承前指令例子, 则 int1 值为 10 (10+10-10=10))

   .intN Env(EnvName, fromChar)
    表定义变数 int1 的值为 dos / windows 的环境变数 EnvName 的
    fromChar 之後的数值. 若之後第一个值不是数字则视为 0.
    fromChar 若没给, 表从头找起的数值. 若环境变数的头不是数字.
    则视为 0.

    ex: .int1    Env(SESSIONNAME, #)
    若 SESSIONNAME=RDP-Tcp#2, 则 int1 值为 2.
    若 SESSIONNAME=RDP-Tcp#abc2, 则 int1 值为 0

    ex: .int1    Env(SESSIONNAME) 或 
        .int1    Env(SESSIONNAME,)
    若 SESSIONNAME=3, 则 int1 值为 2.
    若 SESSIONNAME=def3, 则 int1 值为 0

  2.修改 .exec 指令, 由 .exec 执行档名及叁数. 改为叁数可以前述定义的整数变数代替.
    只要将代替的整数变数以 [intN] 代替即可. (目前只提供 .exec 代替用)

    ex: 假设 SESSIONNAME=RDP-Tcp#5
          以下指令:

         .int0   Env(SESSIONNAME, #)
         .int0    +500
         .exec c:\vtcp\test.exe -M -p[int0]

         表示 int0 整数变数为 505 (5 + 500), 最後会执行 c:\vtcp\test.exe -p505

   [2004-10-20]

 [其他]

 * 新增 auto-ts.cmd/auto.cm3, autos-ts.cmd/autos.cm3  [2004-11-01]

 * 安装程序在 "Get Serial number and Activate key" dialog box 内
   "tiptop type:" 栏位, 原有 "TIPTOP 6.X" 及 "TIPTOP GP" 两选项可选. 
   现在再加一个 "TIPTOP GP (Terminal Server)" 选项,  (default 为 "TIPTOP GP")
   若选 TIPTOP GP (Terminal Server) 时, 则会将 auto.cm3 & autos.cm3 copy 成 auto.cmd & autos.cmd
   [2004-11-01]

 * 安装程序在 "Get Serial number and Activate key" dialog box 内
   再新增一个 "shortcut type:" 栏位.
   并有 "Normal", "UTF8", "All" 三选项.
   若选 Normal 时, 只放 "TOP-TXT", "TOP-GUI", "TOP-TXT(ssh)" & "TOP-GUI(ssh)" 四个 shortcut.
   选 UTF8 时, 则放 "TOP-TXT(UTF8)", "TOP-GUI(UTF8)", "TOP-TXT(ssh-UTF8)" & "TOP-GUI(ssh-UTF8)"
   四个 shortcut.
   选 All 时, 则放以上 8 个 shortcut. [2004-11-01]

 * 修改 telw_u.exe, tel32_u.exe & ssh_u.exe 三支程序, unicode 版完整说明如下:

   1.开放所有 fixed pitch & non fixed pitch 的 screen font 供选择.
     因 non fixed pitch font 的 half width character (one byte code) 有些字元宽度过大,
     显示的视窗宽度将比非 unicode AP 大.
   2.显示及 local print 时视内码为 UTF8 code. 显示及打印时, 会先转成 unicode 後再显示或打印.
   3.显示及 local print UTF8 code 时并做横向排版对齐功能 (一般支援 unicode AP 只有
     fixed pitch font 做到横向排版对齐功能), 但部份过宽字後面会下个字覆盖.
   4.不能在 Win31/95/98/ME/NT 上使用.
   5.不支援简体显示, 即删除 menu bar 上简体显示功能; 也不支持透通模式, 本地及主机端中文码设定.
   6.dialog box 以英文显示.
   7.无中文转码功能
   8.local print 中
     ~GP; 指定的档名只能为 0x7f 以下字符 (只有英数字及英文符号有效) 且不支援显示 remote 图档.
     也不支援 ~Y; 及 Generic Text/only printer driver.
   9.dtcget/dtcput,binup/bindown ... 等传档功能欲传档名, 只支援 0x7f 以下字符的档名.
  10.所有 kit 下的 .tab 等设定档均可在 UTF8 code 版 下使用.
  11.unicode 中 Box Drawing code area(表格符号码)在 linux 的 vi 上视为 1 byte code(halfwidth unicode)

     0x2500 ~ 0x257f --> Box Drawing	

  12.linux 上的 vi 视为 fullwidth unicode 的范围与 MicroSoft & www.unicode.com 有差异.
     所以在 linux 上的 vi 内 cursor 跳动可能有问题.
   [2004-10-27]

 * 新增 auto-ts.cmd & autos-ts.cmd [2004-10-20]

 * 新增 telw_u.exe, tel32_u.exe & ssh_u.exe 三支程序.说明如下:

   1.开放所有 fixed pitch & non fixed pitch 的 screen font 供选择.
     因 non fixed pitch font 的 half width character (one byte code) 有些字元宽度过大,
     显示的视窗宽度将比非 unicode AP 大.

   2.显示时, 视内码为 ascii code, local print 时则视内码为 UTF8 code.
     local print 时, 会将 UTF8 code 转成 unicode 後打印.

   3.local print UTF8 code 时, 做横向排版对齐功能 (一般支援 unicode AP 不做横向排版对齐功能)

   4.限制不能在 Win31/95/98/ME/NT 上使用.
   [2004-08-18]
  

v6.0b [2004-08-05]

 [显示]

 * 解决 gui mode login dialog 在英文版下会乱问题. [2004-08-05]

 [其他]

 * 解决 telnetw / ssh 在 unix / linux 端的 .profile 内加入 exit 时, 有时不会自动 logout 的问题. 
   [2004-08-05]


v6.0a [2004-07-13 ~ 2004-05-19]

 [显示]

 * telnetw.exe/telnet32.exe/ssh.exe about dialog 内新增显示使用者序号栏位. [2004-07-13]

 [其他]

 * 新增 auto.cm1, auto.cm2, autos.cm1 & autos.cm2. 
   auto.cm1 & autos.cm1 内 .exe & .kill 执行的路径为: C:\PROGRAM FILES\FOURJS\CLIWTK\BIN
   auto.cm2 & autos.cm2 内 .exe & .kill 执行的路径为: C:\PROGRAM FILES\FOURJS\GDC\BIN
   并删除 2004-07-09 新增的 auto.cmd1 & autos.cmd2 [2004-07-13]

 * 安装程序在 "Get Serial number and Activate key" dialog box 内
   新增 "tiptop type:" 栏位, 并有 "TIPTOP 6.X" 及 "TIPTOP GP" 两选项可选. 
   default 为 "TIPTOP GP".
   若选 TIPTOP 6.X 时, 安装程序会将 auto.cm1 & autos.cm1 copy 成 auto.cmd & autos.cmd.
   选 TIPTOP GP 时, 则会将 auto.cm2 & autos.cm2 copy 成 auto.cmd & autos.cmd [2004-07-13]

 * 新增 auto.cmd1 & autos.cmd1, 其 .exec & .kill 所执行的路径 
   保留旧版执行路径.如下: 

  .exec "C:\PROGRAM FILES\FOURJS\CLIWTK\BIN\GDC.EXE -M"
  .kill "C:\PROGRAM FILES\FOURJS\CLIWTK\BIN\GDC.EXE" notel
   [2004-07-09]
 
 * 修改 auto.cmd & autos.cmd 之 .exec & .kill 所执行的路径如下: 
  
  .exec "C:\PROGRAM FILES\FOURJS\GDC\BIN\GDC.EXE -M"
  .kill "C:\PROGRAM FILES\FOURJS\GDC\BIN\GDC.EXE" notel
   [2004-05-19]
 

v5.6u [2003-11-27 ~ 2003-08-12]

 [打印]

 * 新增两组 local print 时, 指定主机及本地端内码的指令:

  1.指定主机及本地端内码:  \E[?L%d;%d;%dP

    说明: 第一个 %d 表主机端内码,
          第二个 %d 表本地端内码,
            内码代号为: 0=big5, 1=ns, 2=tca, 3=euc, 4=sbig5, 5=dci,
                             6=apro, 7=ibm5550, 8=nss, 9=bigs, 10=gb2312
            但必须是安装 vtcp 时所选的内码转码组内所有的内码种类.
          第三个 %d 表是否设定为只有一次有效; 值为 0=永久设定, 1=只有一次有效.

    注意: 当时之显示设定中为不转码时, 此指令才有效.

  2.取消指令: \E[!RLP

    说明: 当上述指定内码指令中的第三个叁数设为 0 (永久设定), 可用此取消指令取消永久设定.
   [2003-11-27]

 * HP LaserJet 5000 之相容 driver 为 4V 或 5100. [2003-09-02]

 * Epson LQ2170 必须用 LQ1000 替代.  [2003-09-02]

 * 修改 telnetw/telnet32/ssh local 打印, lpdw/lpd32 之打印 barcode 时, 不论实际产生之
   barcode 图多大, 印出 barcode 之下个字或图一律依 barcode 指令所要求之大小, 换算出其
   所占之 column 及行数, 以做为之後打印文字或图形位置的依据. 

   例如: 印 barcode 指定, 约印一个宽 3.2 个 column, 高约 1.4 行的 barcode,
         则实际将视为 4 个 column, 2 行. (不论实际产生之 barcode 图大於或小於此 size)

   修改後规格, 将有利於下印 barcode 指令者, 可正确算出下个打印位置.
   至於实际产生之 barcode 图若不符合, 则必须由下 barcode 指令者视印出结果自行调整.
   (实际产生之 barcode 图无法完成符合指定要求之大小的原因, 可能是因指令要求的 size 小於最小值)
   [2003-08-25]

 [登录]

 * telnetw/telnetw32/ssh autologin connect dialog box 内加一个 port 输入栏位 [2003-08-12]

 [其他]

 * 新增两组 dtcget/dtcput 传档要求转码时, 指定主机及本地端内码的指令:

  1.指定主机及本地端内码:  \E[?L%d;%d;%dF

    说明: 第一个 %d 表主机端内码,
          第二个 %d 表本地端内码,
              内码代号为: 0=big5, 1=ns, 2=tca, 3=euc, 4=sbig5, 5=dci, 6=apro, 7=ibm5550,
                          8=nss, 9=bigs, 10=gb2312
              但必须是安装 vtcp 时所选的内码转码组内所有的内码种类.
          第三个 %d 表是否设定为只有一次有效; 值为 0=永久设定, 1=只有一次有效.

  2.取消指令: \E[!RLF

    说明: 当上述指定内码指令中的第三个叁数设为 0 (永久设定); 可用此取消指令取消永久设定.
   [2003-11-27]


 * 解决 XP, 2000 上 telnet32 / ssh 之 numlock, pause 无法用其他功能键或组合键代替的问题
   [2003-08-12]

 * 解决 XP, 2000 上 telnetw 无法以 WinExec() 执行 browser 以显示 help file (xxx.htm) 的问题
   [2003-08-12]

 * 修改 telnetw/telnet32/ssh local 打印设定 dialog box  内, 若相关叁数未经设定,
   自动以 "使用建议值" 之设定打印 (即 10 cpi, 6 lpi 及适当字型)
   原规格为: 无设定时, 使用 24 字型, 字间距 12, 行间距 6. [2003-08-12]


v5.6t [2003-03-14 ~ 2003-02-26]

 * setup.exe 新增:
  1.加 ssh icon 到 vtcp group 内, 执行指令为 "c:\vtcp\ssh.exe -bc:\vtcp\autos.cmd"
  2.自动加 TOP-GUI(ssh), TOP-TXT(ssh) 两个 shortcut 到 desktop
  3.自动在 vtcp 安装所在目录, 同一个 drive下 create 一个 tiptop 目录,
    ex: vtcp 在 c:\vtcp 时, create 一个 c:\tiptop
  [2003-03-14]

 * telnetw.exe 之 "设定" ---> "显示设定" ---> "回  " default 出厂值改为 on [2003-03-14]

 * setup.exe 之中文内码组, default 由 "big5 <---> ns <---> tca <---> euc <---> sbig5"
   改为 "gb <---> big5 <---> ns"  [2003-03-14]

 * 修改 v5.2X 版後, local print 无法使用 windows 提供之 print dialog box 内的
   "print to file" 功能 [2003-03-14]

 * copyrigh.exe 改为以 hidden 方式启动 [2003-03-14]

 * 解决 ssh 执行两个以上时, 若关闭一个, 其他 ssh 也会全关的问题
   原因: 32 bit 程序中, windows sdk 的 WinMain() 的判别叁数会 always 为 null, 
         无法判别是否第一次执行. [2003-03-14]
  
 * 解决 vtcp ssh gui mode 在 Win2000/XP 上第二次执行时, 会开在左上角,
   看不到 title & memu bar
   原因: 在 win2000/xp 上读 iconic 之 window 时, 其座标值为一个很大的负数. [2003-03-14]

 * 解决 vtcp ssh gui mode 在 Win2000 上以指令 (\E|S) 执行 word / notepad ... 等 editor 时,
   不会 topmost 的问题 (16 bit 程序, 或在 win98 不会有问题)
   解决方法: 将之强迫放在 topmost [2003-03-14]

 * ssh 专用的 autos.cmd 内 "exec ....\wtk.exe" 改成 "exec ....\startwtk.exe" [2003-03-14]

 * 新增 ssh.exe [2003-02-26]

 * 新增 telnet32.exe 以适应 WinXP/2000/NT [2003-02-26]

 * 新增 dtckpro.exe, batp32.exe, batp32s.exe batpp32.exe batpp32s.exe
   做为 ssh.exe, telnet32.exe 之保护, auto login 专用程序. [2003-02-26]

 * 解决 dtcget/dtcput 无法传中文档名及传长档名文件时仍显示短档名的问题. [2003-02-26]

 * 解决 telnetw.exe 之简体显示在显示某些 big5 码时会出现 "big2gb table error!" 的问题. [2003-02-26]


5.6s [2002-12-04~ 2002-11-01]

 * telnetw 执行 dos command 若 command 长度超过 512 bytes 时
   以 dtcexe32 执行 dos command, 发现 dtcexe32.exe internal allocate 之 buffer 未清时
   在 WinXP/2000 下会残留乱码的 bug 已解决 [2002-12-04]

 * telnetw local print 时, output 到 brother printer (使用数讯 printer driver) 时,
   在 WinNT/XP/2000 下无法印出的问题已解决 [2002-12-04]

 * telnetw local print  新增在彩色打印机下可设定前背景色 16 色之功能: 
   (黑白打印机则禁止使用, 若在黑白打印机下使用以下指令, 则无法正确印出 (并不会以灰阶印出,
    而是有的会印出像反白现象, 有的则印出一块空白方块))

   ~FGn;    设定文字之前景色, n 为指定的颜色, 0 <= n <= 15
   ~BGn;    设定文字之背景色, n 为指定的颜色, 0 <= n <= 15

   n 值代表色如下:

    0:黑  4:红    8:灰   12:亮红
    1:蓝  5:紫    9:亮蓝 13:亮紫
    2:绿  6:棕   10:亮绿 14:黄
    3:青  7:白   11:亮青 15:亮白
   [2002-11-01]

5.6r [2002-8-28 ~ 2002-8-01]

 * 发现 2002-8-01 修改 prtdrv32.exe (改 Canon 600 BXII driver bug)
   引起 telnetw.exe local print 在 WinNT/2000/XP 某种状况下将无法打印. 已修改 [2002-8-28]

 * 发现 2002-8-01 修改  telnetw.exe "打印与记录档" dialog box 内 "打印对话盒" checkbox 选项,
   改为提供 "Off / Windows / 只选打印机" 三选择供选择,
   若 config.exe 内 language 设为英文时, "打印与记录档" 内 "打印对话盒" 选择 "只选打印机" 时,
   local print 时所 popup 出的 dialog box 供选 printer 之 listbox 会不见. 已修改 [2002-8-28]

 * telnetw.exe "打印与记录档" dialog box 内 "打印对话盒" checkbox 选项, 
   改为提供 "Off / Windows / 只选打印机" 三选择供选择.
   其中 "Off" 相当於旧规格的 "打印对话盒" checkbox 设为 off;
    "Windows" 相当於旧规格的 "打印对话盒" checkbox 设为 on, 表 local print 时要 popup 一个
   windows 的 printer dialog;
    "只选打印机" 为新增选项, 选此选项, 表会 popup 一个 "选择打印机" dialog box,
   供 user 只选择打印机名称. user 按下 dialog box 内的 ok button 时就会将资料送至所选择的
   printer. 按下 cancel button 时则会取消 local print.

   以解决 WinNT/2000/XP 在 windows 之 printer dialog box 内选非 default printer 时 paper size
   会不正确的问题. 
   [2002-8-01]

 * 修改 telnetw.exe local print 时 popup 出的 windows 之 printer dialog 
   第一个显示的 printer名称为 "打印与记录档" dialog box 内 "使用打印机" 上所显示的 printer 名称.
   旧规格为 always 显示 default printer 名称. [2002-8-01]

 * 新增一支 shortcut.exe, 用於 tiptop license 版之 setup.exe (安装程序) 安装到最後时,
   可利用 shortcut.exe 在 windows desktop (桌面) 上加上两个 shortcut (捷径) :
   TOP-GUI 及 TOP-TXT;
   按下 TOP-GUI shortcut 时会执行 c:\vtcp\telnetw.exe -bauto.cmd
   按下 TOP-TXT shortcut 时会执行 c:\vtcp\telnetw.exe
   [2002-8-01]

 * 发现 telnetw.exe  "选择键盘组" dialog box 内之 "表单快速键" 设为 off 时, 更换键盘组时,
   menu bar 上 "设定" 项还是会显示 "快速键" 的陈年老 bug,
   如: "设定[C]",  正确应显示为 "设定" , 已修改
   [2002-8-01]

 * 修改 telnetw.exe 使用之 prtdrv32.exe 在 output data 至 Canon 600 BXII 时, 会当的问题.
   原因: prtdrv32.exe 向 Canon 600 BXII driver 要些 default setting 资料时, 其中有项资料
   回传 null pointer, 正常应不会回传 null pointer. 故为 Canon 600 BXII 之 bug.
   已在 prtdrv32.exe 内避开此问题.
   [2002-8-01]

 * 发现 telnetw.exe 之 "打印与记录档" dialog box 内 "使用打印机" 设为 Canon 600 BXII,
   且 "打印对话盒" 设为 on (此版设为 "windows) 时, 在 popup window printer dialog box 时
   会当在 Canon 600 BXII driver 内.
   已解决, 用另一个呼叫 window printer dialog box 的方式避开 Canon 600 BXII driver 的 bug. [2002-8-01]


5.6q [2002-7-08 ~ 2002-5-17]

 * telnetw local 打印及 lpdw (lpdprt32.exe) 处理倚天 ~CXn; ~CYn; 定位指令
   原规格为: 以 default 字型 size 半型字) 加上字间距, 行间距做为定位单位. 并以 0 起算的绝对位置.
   现改为: 以下指令当时使用之字型 size (半型字)  加上字间距, 行间距做为定位单位.  [2002-7-08]

 * 同时支援 big5 & gb码的版本, 
   即将原 tiptop_n 及 tiptop_n_gb 分别放在 kit 下 big5 及 gb 子目录下, 并新增一两岸版之安装程
   式 setup.exe, 该程序执行时会 detect当时的 windows 为 big5 或 gb (default 为 big5) 然後再到
   big5 或 gb 子目录执行旧的安装程序并安装.  [2002-6-24]

 * telnetw 显示及 local print 一图档时, 图档档名可用长档名. [2002-5-17]

 * telnetw 显示图档指令加一组 座标以 cursor 为单位之指令.
   在 vtermcmd.tab 内加一组指令设定  dib1=\E~D

   指令格式为 \E~Dx,y,dibfile\r

   x, y 为以 cursor 为单位之显示座标值, 从 0 起算.
   dibfile 为欲显示之图档档名, 必须在 window 端. \r 即 0x0d, 为指令的结束点.

   ex: \E~D15,40,c:\vtcp\long-filename-grph.bmp\r
 
   则在画面上的 (15,40) (以 0 起算) 就会显示 c:\vtcp\long-filename-grph.bmp 图档.
   [2002-5-17]

 * telnetw 加一组指令以判别 window 端之 file 是否存在.
   在 vtermcmd.tab 内加一组指令设定 chkpath=\E[?@path

   指令格式为 \E[?@path[档名]\r

   [档名] 为欲检查的文件名称, \r 即 0x0d, 为指令的结束点.

   在 telnetw 收到以上指令时, 会检查 [档名] 是否存在,

   若不存在则会回应 \E[!@0path\r
   存在, 且该档名为一目录则回应 \E[!@2path\r
   存在, 但该档名不是目录则回应 \E[!@1path\r

   ex: 1.\E[?@pathc:\vtcp\r telnetw 会回应 \E[!@2path\r 表 c:\vtcp 存在且为一目录
       2.\E[?@pathc:\vtcp\telcnf.tab 会回应 \E[!@1path\r表 c:\vtcp\telcnf.tab 存在且非目录名称.
       3.\E[?@pathc:\vtcp\spool\aaa 会回应 \E[!@0path\r 表 c:\vtcp\spool\aaa 不存在.
   [2002-5-17]


5.6p [2002-5-8]

 * Telnetw 回  (Scroll Back) 设为 on, 执行 vi 时, 即 cursor 在 座标为 (1,1), 下 \E[J 或 \E[0J 时,
   当时画面上的资料会被清掉, 而 netterm 为将它们 scroll up(24 or 25 行) 已改为成同 netterm 之规格. [2002-5-8] ???

 * telnetw local print, lpdw 在印中文及 semi 表格符号时, 加宽其表格线. 原规则为一点宽之表格线,
   现改为用当时使用的字型 size 的高度 / 10, 但不四舍五入, 而且最小为 1, 最大为 6 点.
   例如: 24 字型表格线宽为 2 点, 48 字型表格线宽为 4 点, 60, 70, 80... ( > 60) 字型表格线为 6 点. [2002-5-8]


5.6o [2002-4-15 ~ 2002-3-1]

 * 完成 telnetw.exe local print 在 180 dpi printer driver 下, 
   default 24 字型, internal 改用 26 字型印出规格. 

   实际规格为:
   在欲印出的 printer driver 下, 若其水平及垂直密度均为 180 时,
   当字型 size 的高及宽均设为 24 ~ 26 时, 实际印出字型将使用 26 (26*26) 字型.
   但文件内容排版时, 还是以原字型 size 排版.
   字型放大时, 实际字型印出的 size 仍以 26 字型放大, 而排版也以原字型 size 放大排版.

   所以, 以 default 24 字型为例, 虽然新版改以 26 字型印出, 但仍可在 letter size 下印出一页
   66 行, 一行 85 个英文字 (letter 为高 11 英寸, 宽 8.5 英寸)
   [2002-4-15]

 * telnet 的local print 在印 barcode 时, code 39 部份原来只会产生 full ascii code 39 的图形
   现改为同时支援 standard code 39 及 code39 Full ASCII 两种图形.
   在打印 barcode 指令部份, 原 [格式二] 中 type 栏 00: 表 code39, 01: 表 code128,
   现改为: 00: 表 code39 Full ASCII, 01: 表 code128, 02: 表 standard code39
   即 00, 02 分别会以 code39 Full ASCII, standard code39 的 char set 产生图形.
   而 [格式一] 只可印出 code39 的 barcode, 而且为 Full ASCII 的图形 [2002-3-20]

 * 加入两指令 设视窗为 minimize / restore, 在 vtermcmd.tab 内加入以下两指令定义

    winmin=\E[!@0w  (minimize window)
    winres=\E[!@1w    (restore window)
    [2002-3-1]

 * 修改如新要求 getos 之回应指令最後加上 \r  [2002-3-1]

 * 增加简体版.  

   注: 1) 自此版起安装後不会将 mailw, tarw, tardw 加入 vtcp group.
       2) telnetw.exe / rloginw.exe 内所有使用
          到 font name 为 "细明体" / charset 为 CHINESEBIG5_CHARSET 者
          在 gb 版 (telw_s.exe / rlogw_s.exe) 均改用
          font name 为 "仿宋_GB2312" / charset 为 GB2312_CHARSET
       3) prtdrv.dll 内 ~FM; (使用 "细明体") ~FK; (使用 "标楷体") /
          charset 用 CHINESEBIG5_CHARSET
          在 gb 版 (prtdrv_s.dll) 改为 ~FM; 使用 "仿宋_GB2312", ~FK; 使用
          "楷体_GB2312" / charset 用 GB2312_CHARSET
       4) lpdprt.exe / lpdprt32.exe 内所有使用到
          1) font name 为 "细明体" / charset 为 CHINESEBIG5_CHARSET 者
             在 gb 版 (lpdp*_s.exe / lpdprt32_s.exe) 均改用
             font name 为 "仿宋_GB2312" / charset 为 GB2312_CHARSET
          2) ~FM; (使用 "细明体") ~FK; (使用 "标楷体") /
             charset 用 CHINESEBIG5_CHARSET
             在 gb 版则改为 ~FM; 使用 "仿宋_GB2312", ~FK; 使用
             "楷体_GB2312" / charset 用 GB2312_CHARSET
   [2002-3-1] 


ver: 5.6n [2002-2-18]

 * 5.6m 版起, 已修改鼎新要求 auto.cmd 中 4gl 相关程序之所在目录. [2002-2-18]

 * 修改 lpd32.exe 在缩为 icon 时,
   若收到 lp / lpr / lprw 送来 print job 内所指定之 print port 不正确或不存在时,
   而且在 dtctcp.tab 内也定义 lpdquery = 1 时 (要求出现是否继续打印的 warning message box),
   在出现 warning message box 前, 会先将视窗 size 还原成非 icon 状态.
   待 warning message box 结束时, 再将视窗缩回 icon 状态. [2002-2-18]

 * telnetw.exe 新增一 escape 指令以取得 vtcp 的 config.exe 所设定之
   作业系统 (windows) 种类. (即取得 dtctcp.tab 内 os 叁数设定值) 

   此功能在 vtermcmd.tab 内必须在每种 terminal entry 内加一 getos 指令,
   目前 default 值为 \E[?@os (即在 vtermcmd.tab 每一 entery 最後加 getos=\E[?@os )

   telnetw.exe 在收到 getos 指令时会回应 \E[!@%dos
   (指令中的 %d=0, 1, 2 ; 0 表 win31, 1 表 win95/98, 2 表 winNT/2000)

   例如: dtctcp.tab 内 os=0 时, 则回应 \E[!@0os
                       os=1 时, 则回应 \E[!@1os
                       os=2 时, 则回应 \E[!@2os
  [2002-2-18]

 * lpdw 新增功能:

  1) lpdw新增支援code39, code39 full ascii 及128码 条码功能
  2) lpdw增加一组区分打印机装置指令, 详见注一,
  3) lpdw增加密码设定功能, 设定了密码後, 必须有密码才能设定相关叁数, 详见注二;
  4) 以 ~PNxxx; 指令所指定之 printer port 不存在或错误时,
     pop 出一个问句, 告知指定之 printer port 不存在或错误,
     并问是否送至 default port 之功能.

     此功能必须在 vtcp 安装目录下之 dtctcp.tab 内
     加入一设定叁数: lpdquery=1
     则以後, 欲由 lpdw 印出之 printer job 之 data 档档首所指定的 printer port
     不存在或错误时, 就会出现问句. 否则则会送至 default printer port.

  注一、指令格式: ~PN port;
        说明: port: 为指定之打印机装置名称.
        指令结束必须以 ; (分号) 或 linefeed 结束;
        长度不可以超过 256 bytes;
        不可与其他打印指令合并使用 (例如:~PNlpt1FmG2;),
        必须放在欲打印文件档之第一行行首.
        不允许此指令前有其他打印指令 (例如:~FmG2PNlpt1;或~Fm;~G2;~PNlpt1;),
        不符合以上规则则视为错误指令 (无效)

        注意: client 端之 lp, lpr 或 lprw 所指定之打印机装置名称必须是
              lpdw 端未设定之打印机装置名称.
              否则 lpdw 将送到 default 之打印机装置处理. (default printer port)

              另外, 若 ~PN port; 所指定的打印机装置名称在lpdw 端未设定时,
              也会送到 default 之打印机装置处理. (default printer port)

              例如: ~PNlpt1; 表指定之打印机机装置名称为 lpt1

  注二、lpdw 使用者介面之 menu bar 上 "选项" 栏下, 新增一 "密码" 项.
        deafult 为 off. 若 "密码" 项为 off, 点选时自动显示一个密码设定对话方块,
        要求设定密码, 待正确设定密码後. 此选项即设为 on.
        以後 lpdw 启动後, 第一次点选 menu bar 上 "选项" 栏时,
        会要求输入两次密码.密码正确才允许进入 "选项" 栏做设定.
        若 "密码" 项为 on, 则点选时也会要求输入两次密码.
        密码正确时会将此选项设为 off.
  [2002-2-18]


ver: 5.6m [2001-11-28]

 * 解决某种 jepg file 无法转 .bmp 档问题.
   在 vtcp 下显示时因文件太大无法 allocate memory, 所以还是无法显示. [2001-11-28]


ver: 5.6l [2001-10-25]

 * 执行的 dos command 为不限制 size.

   旧规格限制为 512 bytes.
   新规格 internal 作法为执行的 dos command 指令 sizie 不超过 512 bytes 时,
   仍用旧规格方式, 超过时则将指令存入 vtcp 安装目录下的 tmp\nnnnnnnn.cmd
   (nnnnnnnn.cmd 之 8 个 n 均为数字) 待执行完时再删除之.
  [2001-10-25]


ver: 5.6k [2001-09-25]

 * telnetw 新增一读 dos envirnment 设定值功能

 * 在 vtermcmd.tab 内新增一控制指令 getenv, default 值为 \E&[!

 * remote host 可透过 送出 getenv 指令 + dos envirnment 变数名称 + \r
   给 vtcp 之 telnetw, 要求 telnetw 读出 dos envirnment 变数名称之设定值,
   telnetw 会将读出的 dos envirnment 变数设定值之前後加上 " (双引号)
   并在最後面加上一 \n 回传给 remote host.

   例如: telnetw 收到 \E&[!PROMPT\r 时, telnetw 会将 dos envirnment 中的
         PROMPT 值读出. 假设设定值为 $p$g 时,
         telnetw 就会回传 "$p$g"\n 给 remote host.

   (为解决读取 multiple terminal server 在 dos 端设定的
    sessionname environment 设定值. remote host 端读取可透过以前数讯写的 readstr.c
    以避免非 vtcp 之模拟软体无此功能的问题)
  [2001-09-25]


ver: 5.6j [2001-7-31]

 * 解决 vtcp 之 telnetw 在 tcp/ip 下送出 break 功能无效之 bug [2001-7-31]

 * 并将 lpd32.exe 之以 procedure 方式写的部份改为以 class 方式处理.
   以解决在 multi-thread 下大量打印时, 可能会乱的问题 [2001-7-31]

 * 出厂时, F11 之送出码为 <028> (十进位) [2001-7-31]


ver: 5.6i [2001-7-14]

 * 新增 vtcp 之 telnetw 在 tcp/ip 下可送出 break 功能 [2001-7-14]

 * 解决 WinNT 下 lpdw 扩充成 64 个 queue 後, 32 bit 程序无法正常打印,
   无法读出 网路打印机对应的 port 及结束时无法结束 lpdprt32.exe 等问题.
   32 bit 程序新增启动, 结束程序及 connection 有问题时自动清除 spool 下残留的
   print job 相关文件 (如: cfxxxx... 之控制档及 dfxxxx... 之资料档) [2001-7-14]


ver: 5.6h [2001-6-14]

 * 新增下面规格:

   local 打印新增以下两倚天列表指令,

   ~WXn; (n= 1 -255) 水平放大字型及字间距.
   ~ZXn; (n= 1 -255) 垂直放大字型及行间距.

   说明:

   1) ~WXn; ~ZXn; 两指令後, 若 n > 1 时, 则以下指令均无效.
      (直到 n = 1 或设 ~I; 重设回 default 设定之後才有效)

      ~Wn; (水平放大字型),
      ~Zn; (垂直放大字型),
      ~Xn; (字距变化),
      ~Ln; (行距变化),
      ~LCn; (控制前一行的第一点与下一行的第一点间的点数),
      ~Tn; (设定字型大小),
      ~TXn; (设定字型宽度),
      ~TYn; (设定字型高度)

      另外, dtctcp 版下 cpc2400 中有以 <ESC>指令 设定字间距, 行间距, 字型宽度
      及字型高度倍数部分, 也会无效.

   2) 当 config 档 (telcnf.tab/dtccnf.tab) 中 et_hmod = 0 或不设定时, 允许同行有
      多种字型高度设定, 若在同行有多个字型高度时,
      (如: 设定多个 ~ZXn; ~Zn; ~Tn; ~TYn; 及 ~I; 指令)
      折行时以最大的字型高度加上最後设定的行间距为基准折行.
      (default et_hmod 值为 0)

      若 et_hmod = 1 时, 一行中 (非行首, 即指令前已印出任何字或图印出时)
      有高度及行间距变化指令时, (如: ~I; ~ZXn; ~Zn; ~Tn; ~TYn; ~Ln; 及 ~LCn; 等指令)
      则会从指令处立刻折行.
    [2001-6-14]


ver: 5.6g [2001-5-18]

 * lpdprt.exe (lpdw 或 lpd32 之附属应用程序) 内打印时, 因切换字型会重新 create font object,
   但 windows  有 bug, 没有真的 free 掉 resource, 故打印时若切换字型过多会使得 resource
   愈来愈少, 最後发生一连串不可预期的错误. [2001-5-18]


ver: 5.6f [2001-4-20]

 * 解决 win95/98 下 vtcp 之 batp32.exe 在 check 某 process 是否存在时,
   不会将之前开启之 32bit process id list 之 handler close 的 bug. [2001-4-20]


ver: 5.6h [2001-4-15]

 * 解决 V5.6g 之前版本有一 statement 写错,
   可能会引起以 ~BL 开头之印 barcode 指令, 在设定 barcode 宽度值时
   若值除以 20 的馀数大於等於 10 时, 实际印出可能会少一算个 column. [2001-4-15]
 
 * vtcp/dtctcp/dtcplus Windows 版终端程序的 local  打印 code39 barcode 图档
   新增 code39 full ascii 码元. 

   code39 full ASCII 之有效码元为 0 ~ 127 (即 0 ~ 0x7F),
   其中 0 (Null) 必须以 0x80 编写.码元无法以字符显示
   (如: 0x20 以下，7F 等字元) 时， 请用如 code128 之码元编写方式编写.
  [2001-4-15]


ver: 5.6d [2001-2-26 ~ 2001-2-19]

 * telnetw 及 rloginw online 显示 big5 --> gb (big5) 功能已完成在 telnetw 及 rloginw menu bar
   上设定栏下新增一 "简体显示" 选项, 其英文为 "Simplifed display". telcnf.tab 中则新增一
   "siimpdsp=" 叁数.

   当 "简体显示" 为 on 时, telnetw 及 rloginw 在收到远程主机送来的中文码
   会先到 b5gb.tab 中比对, 若符合其中的 big5 时, 则会转成其对应的 gb (big5) 码.
   "简体显示" 为 off 时则不做任何转换.

   此选项可以选择 "存档" 选项存入 telcnf.tab 中, 其在 telcnf.tab 中的对应叁数为
   "simpdsp", smipdsp=1, 表 "简体显示" 值为 on, 值为 0 或此叁数不存在表 off.

   在 vtcp 版下新增一 big2gbb.dll 执行此功能.
   其使用的 big5 --> gb(big5) 对应 table 档名为 b5gb.tab 的 binary 档,
   目前有 364 个对应字组,

   另提供一个 b5gb.doc 档则是将 b5gb.tab 将每组字码以一行一行列出,
   并在字码前以 Text 方式显示其字码的内码.

   另外, 在 vtcp 版下还提供一新增修改 mapping table(b5gb.tab) 的程序 big2gbb.exe

   usage: big2gbb mapping_table_file

   说明:

   mapping_table_file : 为 user 所编写的字码对应 text 档, 其内容必须将每组对应字码
                        以行为单位列出, 例如 mapping_table_file 档名为 aaa, 其内容为:

            价    
            杰  杰
            广
               :
               :

   表示 aaa 档中欲将 "价" 转成 "  ", "杰" 转成 "杰" 字,
   而第三行的 "广" 无对应字则表示将 b5gb.tab mapping table 中,
   原有的 "广" 字及其对应字删除.

   在成功的执行完 big2gbb.exe 後, 会将旧的 b5gb.tab rename 成 b5gb.tab.bak,
   并将 b5gb.doc rename 成 b5gb.doc.bak, 然後再产生新的 b5gb.tab 及 b5gb.doc 档.
  [2001-2-26]

 * 解决 vtcp local print 至 p16 型 printer 时 (数讯写的 driver)
   若要求两行字重叠打印时, 前行重叠部份不会印出的问题 [2001-2-19]

 * 解决 prtdrv32.exe 无法打印多次的问题. [2001-2-19]


ver: 5.6c [2001-2-12]

 * 解决 telnetw local print 一个 bug (2000/06/17 起, 即 Ver 5.4E 开始有).
   在一列中 (非第 1 列, 非第一行) 下 ~I; 指令时, cursor 会被移至列首. [2001-2-12]

 * telnetw local print 新增 code 128 条码功能後,
   原 barcode 指令扩充如下:

   原 barcode 指令只支援打印 code 3 of 9 (code39) 的 barcode 之倚天打印指令：

   ~BC width height dspchar length barcode;
   ~BI width height dspchar length barcode;
   ~BL width height dspchar length barcode;

   现扩充指令为:

   ~BC width height dspchar [type [class]] length barcode;
   ~BI  width height dspchar [type [class]] length barcode;
   ~BL width height dspchar [type class]] length barcode;

   说明:
   1) 旧的 barcode 指令 format 还是可以用, 只是会被视为 code 39 之 barcode (即原旧规格)

   2) ~BC 开头的表示其 width、height 数值的单位约为 0.1 公分；
      ~BI 开头的表示其 width、height 数值的单位约为 0.1 英寸；
      ~BL 开头的表示其 width 以 0.1 character (or column) 为单位，
      height 以 0.1 line (or row) 为单位。
      目前支援的 barcode 种类有 code 39 及 code 128 两种.

      width  ：表 barcode 之总宽度，长度必须为 3 bytes 的数字；
      height ：表 barcode 之高度，长度必须为 3 bytes 的数字；
      dspchar：设定印 barcode 时，是否也印出其字符，长度必须为 1 byte 的数字。
               若值为１或３表示要印，０或２ 表示不印，
               值为０或１时，表下两个字元 (byte) 为 barcode 的字串长度 (length)
               而此 barcode 种类为 code 39，
               值为２或３时，表之後的两个字元 (byte) 为指定的 barcode 种类 (type)；
               若设其他值, 则会被视为无效指令.

      type : 表 barcode 的种类，目前仅支援两种 barcode : code 39 及 code 128；
             当 type 值为 0 时，表此 barcode 种类为 code 39，
             而之後两个字元 (byte) 为此 barcode 字串的长度 (length).
             值为１时，表此 barcode 种类为 code 128,
             而之後一个字元 ( byte ) 表此 code128 使用的 class 基准
             若设其他值, 则会被视为无效指令.

      class : code 128 使用的 class 种类,
              其值有 'A', 'B', 'C' 三种，分别表示 A, B, C ３种 class.
              若设其他值, 则会被视为无效指令.

      length : 表 barcode 字符的长度，长度必须为 2 bytes 的数字；

      barcode : 表 barcode 的码元，长度为 length bytes，

      code 39 的有效码元为：
        '0' ~ '9'、'A' ~ 'Z'、space、 - 、 * 、 $ 、 / 、 + 、% 等 44 个字元。

      code 128 部份的有效码元，
        class A 为：ASCII 的 0 ~ 95(即 0 ~ 0x5f), F1, F2, F3, F4 及 SHIFT；
        class B 为：ASCII 的 32 ~ 127(即 0x20 ~ 0x7f), F1, F2, F3, F4, 及 SHIFT；
        class C 为：数字的 0 ~ 9 (即 0x30 ~ 0x39) 及 F1,
                    且数字部份以２个编成一码.

      在 barcode 中若欲编写的码元无法以字符显示 (如: 0x20 以下, F1, F2, F3,
      F4 及 SHIFT 等字元) 时，必须如同 ~Yxxx; 指令一样，以 16 进位表示法
      (即 以 \ 字符加上两位数的 16 进位数值取代, 一般可显示字符也可使用
       16 进位表示法). 如: ASCII 31 必须以 \1f 表示, '9' 可以 \39 表示.

      其中 0 (NULL), F1, F2, F3, F4 及 SHIFT 又必须分别以
      0x80, 0x82, 0x83, 0x84, 9x85 及 0x81 编写.

      若欲使用复合式 class 也可在 barcode 中指定.
      而 class A, B 及 C 则必须分别以 0x8d, 0x8e 及 0x8f 表示.

      当 barcode 的码元不在指定的 class 有效码元范围内时,
      则系统会找出该码元附合的 class 来编码, 故该 barcode 会变成复合式 barcode;

      又在码元内指定 class 但之後的码元又不在指定的 class 范图内时
      (即复合式 barcode 码元组合),
      则先以 指令中指定的 class 为基准编码, 若还是不附合指令中指定的 class 范围时,
      系统才会去找出该码元附合的 class 来编码;

      指定成 class C 时其码元为奇数个时, 系统会将最头或最後一个码元
      依上述规则编码.

      若均不附合上述规则及有效码元范围时则会无法印出 barcode 图形.

   注：barcode 打印宽、高的总长度都采取近似值，若 width、height
       值为 0，则由系统计算出适当宽度及高度。
       height：不印字符约1 cm，印字符约 1.3 cm
       width ：code 39 : ((字符长度 + 2) * 0.4 ) cm)
       code 128 : (字符长度 + 3) * 0.4) cm)

   在某些 barcode scanner (barcode reader) 无法读出某种 class
   或复合式的 code 128 barcode


   例：~BC040010110X123456789;

       印出宽度约为 4 公分(040 * 0.1cm)，高度约为 1 公分(010 * 0.1cm)，
       并印出其字符，字符长度为 10 bytes，字符内容为 "X123456789" 的 code 39 barcode

   例：~BI01500320008A12-3456;

       印出宽度约为 1.5 英寸(015 * 0.1inch)，高度约为 0.3 英寸
       (003 * 0.1inch)，不印出其字符，字符长度为 8 bytes，
       字符内容为 "A12-3456" 的 code 39 barcode

   例 : ~BC035015301A10abcde01234;

        印出宽度约为 3.5 个字元，高度约为 1.5 行, 并印出其字符，
        以 class A 为基底, 字符长度为 10 bytes，
        字符内容为 "abcde01234" 的 code 128 barcode
   [2001-2-12]

ver: 5.6b [2001-1-4]

 * 解决 telnetw 透过 prtdrv32.exe (32 bit 之 local 打印程序) local 打印时,
   若下倚天指令时, 以 linefeed 做为倚天指令的结束时会多列一个空白行的 bug.
 
   此 bug 自 5.5c 版 (2000/09/08) 新增 prtdrv32.exe 起就发生.
   故 从 5.5c ~ 5.6a 均有此 bug.
   [2001-1-4]


ver: 5.6a [2001-1-2 ~ 2000-12-12]

 * bintrs.c 解决 binup & bindown 会 timeout 的 bug  [2001-1-2]

 * 解决 5.6a 续中, 将 telnetw 中 "打印设定" dialog box 内
    "适用打印机" 栏的 "All" 选项删除後, 会引起第一次进入 "打印设定" 时,
   抓错 适用打印机的 水平及垂直 dpi 数的问题. [2001-1-2]

 * ftpd Windows 版在收到 "REST" 指令时, 原本会回应: 502: REST command not implemented.
   现改为与 linux 之回应相同,
   即无叁数或非数字型叁数时回应: 500: REST xxx command not understood.
   其馀回应: 350: Restarting at xxx. Send STORE or RETRIEVE to initiate transfer. [2000-12-14]

 * telnet Window Version 在 Windows ME 下执行时, 部份 terminal 指令无效的问题已解决. 

   原因: call windows winsock中 connect()後, telnetw.exe中存放所有 terminal指令的 buffer 被破坏.

   解决方法: 可能是 stack 不够大引起. 所以将存放所有 terminal 指令的 buffer,
          及 parsing terminal 指令的 function calls 移至一个新的 .dll 内处理.
  [2000-12-12]

 * telnetw 倚天打印指令加一个结束指令 '.' (以句点结束)
   当 config 档中设有 etend1=1 时, local 打印时若在倚天指令下,
   '.' (句点) 会被视为倚天的结束指令.
   故当 etend1=1 时, ~GP, ~GZ, ~GW..... 等指令因其叁数内可能含有 '.' (句点)
   会被视为指令的结束, 所以必须特别小心. [2000-12-12]


ver: 5.5g [2000-11-20]

 * 解决 telnetw 使用 LM-PR100 printer server 时,
   printer port 被设为 "LPT:PSFA580-1" 时, 无法印出的问题. [2000-11-20]


ver: 5.5f [2000-10-9 ~ 2000-10-3]

 * 在 telnet Windows 版的 about box 中加入版本号.  [2000-10-9]

 * telnet Windows 板, 原指定 output printer driver 指令 "\E[@P.....\r" 指令
   (..... 表 printer driver 名称, 定义在 vtermcmd.tab selprt1= 叁数中) 

   现在扩充为 "无指定 printer driver 名称时表 output 到 default printer"

   若在 "打印与记录档" dialog box 中有设定 "使用打印机" 时,
   则表 output 到 "使用打印机"

   例如:

   1. 打印机初值为"HP LaserJet 5L PCL", 且未到 "打印与记录档" dialog box 中设定 "使用打印机" 时,

    1) 下 "\E[@PEpson LQ1000\r" 指令时.
        则打印资料会送到 Epson LQ1000 driver
    2) 下 "\E[@P\r" 指令时,
        则打印资料会送到 HP LaserJet 5L PCL driver

   2. default printer 为 "HP LaserJet 5L PCL",
      且到 "打印与记录档" dialog box 中设定 "使用打印机" 为 "HP LaserJet 4L" 时,

    1) 下 "\E[@PEpson LQ1000\r" 指令时.
        则打印资料会送到 Epson LQ1000 driver
    2) 下 "\E[@P\r" 指令时,
        则打印资料会送到 HP LaserJet 4L driver
  [2000-10-3]


ver: 5.5e [2000-10-2]

 * telnet Windows 版 解决 tiptop login 画面在 windows 95 ver4.00.950.B 下会
   login 不成功的问题. [2000-10-2]


ver: 5.5d [2000-9-15]

 * telnet Window 版 local print 的对话框, 出现时, telnet 会变成 topmost,
   当对话框结束後, telnet 就回复正常.  [2000-9-15]


ver: 5.5c [2000-9-9]

 * telnetw.exe 之 local 打印部份, 若选择的 printer driver 不是  p16 (brother 160dpi) 型
   printer; 且不是要求 log local print 之资料时, local 打印之功能会改由 prtdrv32.exe 处理.
  [2000-9-9]

 * 原 prtdrv.dll 内因切换字型时, 会重新 create font, 并 free 掉旧字型, 但 windows 有 bug, 没有
   真的 free 掉 resource, 故打印时若切换字型过多会使得 resource 愈来愈少, 最後发生一连串不可预
   期的错误. 

   prtdrv32.exe 已避开上述 windows 的 bug 来解决该问题. [2000-9-9]


ver: 5.5b [2000-8-8]

 * 改善自动 login 速度太慢问题 [2000-8-8]

 * 解决自动 login 时, 若 connect 不成功时, 会因出现的 error message box 藏在 login dialog box
   下方无法按 "OK" button, 而被误以为 hung 住的问题. [2000-8-8]


ver: 5.5a [2000-8-1 ~ 2000-07-03]

 * telnetw.exe 之 menu bar "交谈" 项下, 新增 "位址簿" 及 "储存到位址簿" 两选项
   两选项与 netterm 之 "位址簿" 选项部份类似;   [2000-8-1]

  1) "储存到位址簿" 选项与 menu bar "交谈" 项下之 "储存连线" 及 "储存新连线" 类似,
     功能为将当时 telnetw 已储存的环境变数(即当时使用的 config 档, 如: telcnf.tab 或 xxx.tel 档)
     及连线时用的 hostname (或前次连线之 hostname) 另存一新 config 档 (系统自定档名),
     user可以自行写入一个 "连线名称" 来记录它, 以方便下次连线时, 可透过 "位址簿" 选项,
     点选该名称快速连线.
  2) "位址簿" 选项除可点选以 "储存到位址簿" 所储存之连线名称外, 还可键入 hostname 或
     ip address 直接连线.
  3) 在两选项内, 均可删除之前储存的连线名称,
     但要特别注意的是: 删除时该连线名称不可以是正在连线使用中, 否则可能会造成某些错误.
  4) 此次新增 dtcaddr.exe 及 dtcaddr.big 两个文件;
     两选项之功能, 均是由执行 dtcaddr.exe 完成,
     而各个连线名称及其使用之 config 档均记录在dtcaddr.tab 中, (dtcaddr.tab 由系统产生)
     dtcaddr.big 则为 dtcaddr.exe 之中文讯息档, 若不存在则无法在繁体中文版之wndows 下
     显示中文讯息.
  5) 若单独执行 dtcaddr.exe 时, 相当於点选 “位址簿” 选项.
  [2000-8-1]

 * 连线软体local打印及lpdw.exe之倚天打印指令~Xn; (设定全型字间距), 新增奇数点数之功能

  1) 原本在 4.7a 版 (1998/01/12)之前, 设定全型字间距为奇数点时已是有效的,
     因客户要求符合倚天中文系统之规格固定空偶数点,
     故4.7a 版起, 奇数点全型字间距时会自动减一点当做字间距的点数.
  2) config 档中新增 "oddcpi" 叁数以区别奇数点全型字间距是否有效,
     但 lpdw.exe, lpd32.exe 固定读取 telcnf.tab 内之 "oddcpi" 叁数.
     当 "oddcpi=1" 时表奇数点全型字间距有效,
        "oddcpi=0" 或没定义或不存在均视为奇数点全型字间距无效,
     default 值为奇数点全型字间距无效.
  [2000-8-1]

 * 解决了 telnetw.exe 下以 dtcput 传大档时会 hung 住的问题. [2000-7-13]

 * telnet Windows 版在 menu bar "设定" 项下 新增一 "自动关窗" 选项. 
   其功能为 connect 之後, disconnect 时会自动关窗.
   telcnf.tab 中以 "aclose=" 叁数存放 "自动关窗" 之设定值.
   aclose=1" 表 disconnect 时自动关窗, aclose=0, 或没写表 disconnect 时不自动关窗.
  [2000-7-6]

 * auto.cmd 中之 exec 指令可执行有传入叁数之执行档, 其规则在 datasys.txt 中之注一 [2000-7-6]

 * telnwt Windows 版 local 打印 barcode 部份  

  1) 再新增一个倚天打印指令:

     ~BL <width> <height> <display char> <barcode length> <barcode> ;

     表以 width 以 0.1 character (or column) 为单位, height 以 0.1 line (or row) 为单位.
     其他同 ~BC....; ~BI....; 两印 barcode 指令.

  2) 修改印出规格如下:

     旧规格:
     以前印完 barcode, 之後印的字会紧接着 barcode 之後印,
     而 barcode 之後的 Line Feed 折行则以当时使用的字型高度加上行间距为高度,
     (即与一般只印文字时跳一行一样, 故可能引起下一列的资料与 barcode 之後
     印的文字不对齐, 及 barcode 正下方的文字与 barcode 重叠的现象.

     新规格:
     现修改为 barcode 之後印的文字, 其位置是在 barcode 印完後的整数 column 位置上,
     而印 barcode 该列最後的 Line Feed 折行时则是依 barcode 的高度换算成整数个
     列数为依据来折行.

     例如: 要求印一个宽约 3.2 个 column, 高约 1.4 列的 barcode,
           (一个 column 的宽度为当时使用字型的宽度加上字间距,
            一列的高度为当时使用字型高度加上行间距)
            所以 barcode 之後印的文字是距离 barcode 起印处 4 个 column 处,
            而 barcode 该列的 Line Feed 折行的距离为 2 列.
  [2000-07-03]

 * 执行 Dos 指令 (\E | S) 之指令长度由 81 bytes 加大为 512 bytes [2000-07-03]

 * 开放 dos 版之 "fnt" (询问倚天中文类别) 指令, 及其回应指令 "fecho" 之功能.

   目前 vtermcmd.tab 中有一 fnt=\E@[? 之设定, 而 telcnf.tab 中有 fecho=\E@[V 之设定.

   在 dos 版部份, 当 telnetw 收到 vtermcmd.tab 内 "fnt" 所对应的指令时,
   会将 telcnf.tab 内 "fecho" 所对应的指令 加上当时使用倚天中文类别代号字元回应给 remote 端
   (使用倚天中文类别代号字元为 '8' 表使用 16 字型之倚天中文版本,
    为 'c' 表使用 24 字型之倚天中文版本, '0' 表没有使用倚天中文)

   但 porting 成 windows 版之後这组指令就 ignore 掉了,
   现在 windows 版再度开放使用,
   而回应字串为将 telcnf.tab 内 "fecho" 所对应的指令 加上 "1\n"

   用处及用法:

   例如: 在 unix 端欲在 login 之後欲以 .profile 设定一环境变数 VTCP=1,
         则可在 .profile 内加上以下几列指令

         VTCP=0;export VTCP
         echo "\033@[?"
         read VTCP

   (注: 但以上做法在其他连线软体则可能因为 unix 端送出 \E@[? 指令後
        连线软体没回应任何字串, 又 read 指令会读取 standard input 之资料
        直到 \n 才结束, 结果造成 .profile 执行到 read 时一直在 wait 一个 \n)
  [2000-07-03]

 * 解决 clock telnet Windows 版在 5.4d 版改吃 cpu 问题之後变无效的 bug [2000-07-03]

 * 原 "打印与记录档" dialog box 内之 "打印对话盒" 设为 on 时 "使用打印机" 会 disable,
   修改为两者可并存, 并且在 local 打印, "打印对话盒" 出现时, 打印对话盒上使用的打印机
   driver 为 "打印与记录档" 内 "使用打印机" 之 driver 而非 windows 上设定之
   default printer driver
  [2000-07-03]

 * telcnf.tab 内 trsp 出厂值设为 1 (透通模式), fecho 之设定值必须删除 (即 "trsp=1", "fecho=")
  [2000-07-03]

 * telcnf.tab 增加 "rev=2" 叁数; vtermcmd.tab 必须同 attach file: vtermcmd.tiptop.txt.
   以达到以 telnetw 连线後使用 informix AP 时之前背景色能表现正确(与 netterm 同)
  [2000-07-03]

 * 解决 ftp windows 版, 以 Window mode 与某些 ftpd 连线时, 因未处理 500 的 error
   code 所引起的问题.  [2000-07-03]

 * 希望在 Unix 的 user .profile 中能透过 ESC 命令, 读取 terminal 的回传的讯息,
   由此一讯息来分辨 terminal的类型. 但是 NetTerm 并不会回传讯息, 因此, 读取回传讯息时
   会卡在 read 指令. 

   解决方法:

   1. compile 下面的程序 cc -o readstr readstr.c
   2. 将 readstr 考备到 /usr/bin
   3. 在 .profile 中加入

    ECHOSTR=`readstr`

    /*
     * File       :  readstr.c
     * Copyright  :  Diginfo Technology Co.
     * Date       :  2000-7-3
     */

     #include <string.h>
     #include <signal.h>

     void
     timecatcher(int num)
     {
        exit(0);
     }

     main()
     {
        int i;
        char ch, buf[128];
        buf[0] = 0;

        signal(SIGALRM, timecatcher);
        alarm(3);
        for(i = 0;i < sizeof(buf);i++) {
           read(0, &ch, 1);
           if(ch == 0xd || ch == 0xa)
              break;
           buf[i] = ch;
        }

        write(1, buf, strlen(buf));
     }

    [2000-07-03]
