CR800 OS 9

  1. 修正了WorstCase没有存储正确数量的记录。
  2. 消除可能的文件句柄泄漏与隐藏文件。
  3. 固定的表文件间隔模式表关闭一个记录之间的文件数据和表数据。
  4. TDR100:增加了TDR在发送命令后和接收回显命令前的响应时间。固定加载电缆长度波形数据时,TDR不响应命令。
  5. 固定TCP/IP时发送PakBus包与过多的引用。数据包大小超过了以太网允许的大小。解决办法是把包分解成小块。
  6. 当将字符串转换为数字时,“TRUE”将转换为-1,“FALSE”将转换为0。
  7. 改进的DNP3:修正了第10组、第1组和第2组的问题。如果组和/或变异不存在,则更改响应,以便序列号正确。更改事件时间戳以UTC格式保存,如果激活,使用数据记录器的UTC偏移设置。固定设置负16位整数。
  8. 更改了字符串功能:当比较字符串变量和数字变量时,在比较之前将字符串转换为数字。以前,如果字符串变量在操作符的左侧,则在比较之前将右侧的数值变量转换为字符串。
  9. 改进了对有效变量名的检查。不允许']','[',或'#'字符。
  10. 改变了SDM处理与测量不同步。不要浏览收购代码。
  11. 更改了文件管理器设置操作,以消除可能损坏的设置。
  12. 修复了文件管理器设置部分更改设置的问题,同时重新编译。这是通过等待并锁定保护设置的信号量来完成的。
  13. 固定终端模式写入一个错误的指针的情况下,它超时等待更多的输入。对于OS 16来说,这个bug导致了表定义的损坏,因为它覆盖了状态表中CPUDriveFree字段的类型。在OS 17中,这导致Status表作为一个整体和单个字段CPUBytesFree是不可收集的。
  14. 修正了跳过切换到顺序模式的检查的问题。“Do”指令没有被检测为条件指令,因此在条件中切换到顺序的指令没有被检测到。
  15. 将CallTable改为1)检测是否从外部Scan.. nexscan调用,并获得指向正确时间(系统或扫描)的指针。2)添加检查,以确保同一表没有同时从多个序列调用。
  16. 增加了一个可选的参数GetDataRecord, MaxRecords。如果MaxRecords < 0,它将收集未收集数据的MaxRecords,从最旧的开始。如果是> 0,它将收集未收集的数据,直到MaxRecords,从最近的数据开始。如果不存在,默认值为1(最近的记录)。注意,如果参数不是1,将发生两个交换。第一个将确定当前的记录编号。然后,一个从开始记录号收集到结束记录号的命令将跟随。-固定AVW200时,目的地有一个变量索引,使数据不总是存储到第一个变量访问。
  17. 修正了处理超过12个字符的文件名时潜在的FTP问题。这是由于一个OS构建问题,TCP/IP源代码访问的头文件中没有启用长文件名支持。
  18. 如果在尝试编译另一个程序后,成功编译的默认程序导致了错误,则失败程序的错误信息将被附加到默认程序的编译结果中。
  19. 修正了SendFile指令,使它不会有时错误地报告文件查找错误-25结果代码。
  20. 增加了3秒超时,当VoiceDial触发了语音序列的事件结束语音序列。这使得COM320在再次拨号尝试之前能够正常挂断。
  21. 限制只允许PWM指令在一个程序的每个端口发生一次。
  22. 固定的管道模式缓慢切片问题,导致时间前进不正确,由于背景校准执行任务排序器与错误的开始操作码指针。这与时间有关,并且要求测量时间为4秒长。
  23. 固定AVW200与变量代表,使指令将等待额外的2秒每代表需要AVW200进行测量。
  24. 从预编译器的?Show Labels?输出列表。显示此信息会引起混乱。
  25. 限制用户在CRBasic中打开而不关闭的文件和COM端口的数量,这样系统就不会因正常的文件操作而耗尽内存。
  26. 修正了之前在函数内部对Long或Float类型函数名的引用。
  27. 允许在多行上进行变量初始化,只要换行符在','值分隔符之后即可。
  28. 修复了在通过TCP/IP并发服务FTP或其他文件事务时,获取文件或表定义时可能出现的信号量死锁问题。
  29. 2)增加了一个可选的参数代码,该代码允许将long值处理为16位,或将32位float或long值处理为完全大的Endian;也就是说,它将反转16位寄存器的顺序。
  30. 修改终端模式'P'(通话模式)和'W' (snoop模式),允许用户覆盖默认的40秒超时。此外,如果PakBus在终端COM端口上是活动的,'P'命令也会像'W'命令一样保持打开状态。
  31. 添加“plain/txt”作为http文件类型。
  32. 修正了通过EmailSend发送附件时附件文件的大小大于3000字节的问题。对于这些较大的附件,附件结束后的边界是不正确的。
  33. 在NTCIP中增加了globalLocalTimeDifference MIB。
  34. 增加了FormatLongLong函数,它将一个64位长整数转换为十进制字符串。假设源是两个相邻的长串。例如:dim src(2) as Long = {2,3} public ID as String ID = FormatLongLong(src) 'ID是8589934595
  35. 改进的SNMP (NTCIP)如下:1)允许时间作为掩码变量的范围是完整的32位,而不是一半。2)团体名限制为两个,一个具有读/写访问权限(默认为“私有”),第二个具有只读访问权限(默认为“公共”)。3)在ESSInit中增加了一个可选的String类型的参数,可以是变量,有两个团体名,逗号分隔,第一个具有读写权限,第二个具有只读权限。
  36. 固定的FormatFloat,当使用"% "时,需要添加尾随0的精度,因为指定的精度是>而不是值的精度。Nf "其中n是精度。
  37. 改进的TableFile: 1)同时更新了输出状态和输出文件名。2)增加了更多的返回码检查,提高了SC115的鲁棒性。写过程中电源丢失(或电缆断开)导致记录丢失。现在将检测到失败的写操作,并且除非所有操作都成功,否则不会更新最后保存的记录号。
  38. 更改自定义菜单,允许常量表中的常量被修改。为了获得这个特性,使用MenuItem和常量作为要显示的值,然后使用MenuPick和常量作为选择列表中的第一个名字,以及根据需要的后续选择选项。编辑此常量将修改该常量的值。为了使更改永久(即,在程序中更改),添加了一条新指令:MenuRecompile(string,var)被添加。选择此菜单项编辑后,对变量的表达式求值,如果非零,则保存常量并重新编译程序。
  39. 增强自动切换到顺序模式,在条件中包括SerialInRecord和SerialOutBlock。
Baidu