G gmsft Unregistered / Unconfirmed GUEST, unregistred user! 2003-12-19 #2 可以这样: 取每一个字符的 ASCII 码相加,再取和数的最后一位。
K kkyy Unregistered / Unconfirmed GUEST, unregistred user! 2003-12-19 #3 每个字节或长度进行位操作,得出一个值,并不保证能校验正确
C cslotus Unregistered / Unconfirmed GUEST, unregistred user! 2003-12-19 #4 每一个字符(8位)与下一位字符左移一位后的结果作异或运算
A adden_lian Unregistered / Unconfirmed GUEST, unregistred user! 2003-12-19 #5 CheckCode1:=0; for i:= 1 to ((length(senddata)-2) div 2) do CheckCode1:=(CheckCode1+StrToIntDef('$'+Midstr(senddata,2*i-1,2),0)) mod 256; senddata:=senddata+inttohex(CheckCode1,2);
CheckCode1:=0; for i:= 1 to ((length(senddata)-2) div 2) do CheckCode1:=(CheckCode1+StrToIntDef('$'+Midstr(senddata,2*i-1,2),0)) mod 256; senddata:=senddata+inttohex(CheckCode1,2);
H hnw777 Unregistered / Unconfirmed GUEST, unregistred user! 2003-12-19 #6 adden_lian: 如果是汉字的话, 你的程序的结果就全是00了