TC官方合作论坛

 找回密码
 立即注册
查看: 61614|回复: 359

[其他] TC利用xmlhttp的各种对象实现post功能

  [复制链接]
发表于 2013-7-9 22:17:09 | 显示全部楼层 |阅读模式
源代码在附件里面, 部分功能 可能不是很稳定 希望有熟悉post的同学把这个代码做的更加完善

  1. namespace winhttp
  2. //通过post向网站提交数据
  3. //参数1:提交的模式
  4. //参数2:要提交的网页地址
  5. //参数3:要提交的数据
  6. //参数4:返回的网页数据的编码
  7. function openUrl(type,weburl,send="",Cset="utf-8")
  8.     http=com("WinHttp.WinHttpRequest.5.1")
  9.     if(type.vartype(http)=="插件")
  10.         goto go
  11.     endif
  12.     http=com("MSXML2.ServerXMLHTTP.6.0")
  13.     if(type.vartype(http)=="插件")
  14.         goto go
  15.     endif
  16.     http=com("Msxml2.ServerXMLHTTP.5.0")
  17.     if(type.vartype(http)=="插件")
  18.         goto go
  19.     endif
  20.     http=com("WMsxml2.ServerXMLHTTP.4.0")
  21.     if(type.vartype(http)=="插件")
  22.         goto go
  23.     endif
  24.     http=com("Msxml2.ServerXMLHTTP.3.0")
  25.     if(type.vartype(http)=="插件")
  26.         goto go
  27.     endif
  28.     http=com("Msxml2.ServerXMLHTTP")
  29.     if(type.vartype(http)=="插件")
  30.         goto go
  31.     endif
  32.     http=com("Msxml2.XMLHTTP.6.0")
  33.     if(type.vartype(http)=="插件")
  34.         goto go
  35.     endif
  36.     http=com("Msxml2.XMLHTTP.5.0")
  37.     if(type.vartype(http)=="插件")
  38.         goto go
  39.     endif
  40.     http=com("Msxml2.XMLHTTP.4.0")
  41.     if(type.vartype(http)=="插件")
  42.         goto go
  43.     endif
  44.     http=com("Msxml2.XMLHTTP.3.0")
  45.     if(type.vartype(http)=="插件")
  46.         goto go
  47.     endif
  48.     http=com("Msxml2.XMLHTTP")
  49.     if(type.vartype(http)=="插件")
  50.         goto go
  51.     endif
  52.     http=com("Microsoft.XMLHTTP")
  53.     if(type.vartype(http)=="插件")
  54.         goto go
  55.     endif
  56. go:
  57.     if(str.strlowercase(type)=="post")
  58.         http.Open("post",weburl,false)
  59.         http.setRequestHeader("Cache-Control","no-cache")
  60.         http.setRequestHeader("Accept","*/*")
  61.         http.setRequestHeader("UserAgent","Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET4.0C; .NET4.0E")
  62.         http.setRequestHeader("Content-Type","application/x-www-form-urlencoded")
  63.     else
  64.         http.Open("get",weburl,false)
  65.         http.setRequestHeader("Accept","*/*")
  66.         http.setRequestHeader("UserAgent","Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET4.0C; .NET4.0E")
  67.         http.setRequestHeader("Cache-Control","no-cache")
  68.     endif
  69.     http.send(send)
  70.     t=system.gettickcount()
  71.     while(http.ReadyState != 4)
  72.         help.sleep(100)
  73.         if((system.gettickcount()-t)>5000)
  74.             return false
  75.         endif
  76.     endwhile
  77.     ret=winhttp.BytesToBstr(http.ResponseBody,Cset)
  78.     header=http.GetAllResponseHeaders()
  79.     http=null
  80.     return ret
  81. endfunction
  82. //自动识别编码
  83. function openUrlExAutoCset(type,weburl,send="",setcookie="",&header="",referer="",Cset="utf-8")
  84.     http=com("WinHttp.WinHttpRequest.5.1")
  85.     if(type.vartype(http)=="插件")
  86.         goto go
  87.     endif
  88.     http=com("MSXML2.ServerXMLHTTP.6.0")
  89.     if(type.vartype(http)=="插件")
  90.         goto go
  91.     endif
  92.     http=com("Msxml2.ServerXMLHTTP.5.0")
  93.     if(type.vartype(http)=="插件")
  94.         goto go
  95.     endif
  96.     http=com("WMsxml2.ServerXMLHTTP.4.0")
  97.     if(type.vartype(http)=="插件")
  98.         goto go
  99.     endif
  100.     http=com("Msxml2.ServerXMLHTTP.3.0")
  101.     if(type.vartype(http)=="插件")
  102.         goto go
  103.     endif
  104.     http=com("Msxml2.ServerXMLHTTP")
  105.     if(type.vartype(http)=="插件")
  106.         goto go
  107.     endif
  108.     http=com("Msxml2.XMLHTTP.6.0")
  109.     if(type.vartype(http)=="插件")
  110.         goto go
  111.     endif
  112.     http=com("Msxml2.XMLHTTP.5.0")
  113.     if(type.vartype(http)=="插件")
  114.         goto go
  115.     endif
  116.     http=com("Msxml2.XMLHTTP.4.0")
  117.     if(type.vartype(http)=="插件")
  118.         goto go
  119.     endif
  120.     http=com("Msxml2.XMLHTTP.3.0")
  121.     if(type.vartype(http)=="插件")
  122.         goto go
  123.     endif
  124.     http=com("Msxml2.XMLHTTP")
  125.     if(type.vartype(http)=="插件")
  126.         goto go
  127.     endif
  128.     http=com("Microsoft.XMLHTTP")
  129.     if(type.vartype(http)=="插件")
  130.         goto go
  131.     endif
  132. go:
  133.    
  134.     //http=com("MSXML2.ServerXMLHTTP.6.0")
  135.     //http.Option(4,13056)
  136.     //http.Option(6,false)
  137.     if(str.strlowercase(type)=="post")
  138.         http.Open("post",weburl,false)
  139.         http.setRequestHeader("Content-Type","application/x-www-form-urlencoded")
  140.     else
  141.         http.Open("get",weburl,false)              
  142.     endif   
  143.     http.setRequestHeader("If-Modified-Since","0")
  144.     http.setRequestHeader("Cache-Control","no-cache")
  145.     http.setRequestHeader("Accept","*/*")
  146.     http.setRequestHeader("Connection","Keep-Alive")
  147.     http.setRequestHeader("Accept-Language","zh-CN")
  148.     http.setRequestHeader("Content-Length",str.strleng(send))
  149.     http.setRequestHeader("UserAgent","Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET4.0C; .NET4.0E")
  150.     if(setcookie!="")
  151.         http.setRequestHeader("Cookie",setcookie)
  152.     endif
  153.     if(referer!="")
  154.         http.setRequestHeader("Referer",weburl)
  155.     endif
  156.     http.send(send)
  157.     t=system.gettickcount()
  158.     while(http.ReadyState != 4)
  159.         help.sleep(100)
  160.         if((system.gettickcount()-t)>5000)
  161.             return false
  162.         endif
  163.     endwhile
  164.    
  165.     //http.WaitForResponse(5000)
  166.     //status=http.status()
  167.     //if(status==302)
  168.     //help.messagebox("302")
  169.     //endif
  170.     header=http.GetAllResponseHeaders()
  171.     retcset=http.getResponseHeader("Content-Type")
  172.     cset=StrEx.mid(retcset,"charset=")
  173.     if(cset=="")
  174.         cset=Cset
  175.     endif
  176.     ret=winhttp.BytesToBstr(http.ResponseBody,cset)
  177.     http=null
  178.     return ret
  179. endfunction

  180. //不包含域信息
  181. function getCookie(header)
  182.     theader
  183.     cookie
  184.     str.split(header,"\r\n",theader)
  185.     count
  186.     arraysp.size(theader,count)
  187.     for(i=0;i<count;i++)
  188.         regextext="Set-Cookie: (.+?)=([^;]+)?"
  189.         retArray
  190.         xx=str.strsub(theader[i],0,11)
  191.         if(xx=="Set-Cookie:")
  192.             num=字符串.正则子表达式匹配(regextext,theader[i],retArray)   
  193.             cookie&=retArray[0]&"="&retArray[1]&";"
  194.         endif
  195.     endfor
  196.     cookie=str.replace(cookie,";;",";")
  197.     return cookie
  198. endfunction
  199. //包含域信息
  200. function getCookieEx(header)
  201.     theader
  202.     cookie
  203.     str.split(header,"\r\n",theader)
  204.     count
  205.     arraysp.size(theader,count)
  206.     for(i=0;i<count;i++)
  207.         xx=str.strsub(theader[i],0,11)
  208.         if(xx=="Set-Cookie:")
  209.             cookie&=str.strsub(theader[i],11,str.strleng(theader[i]))&";"
  210.         endif
  211.     endfor
  212.     cookie=str.replace(cookie,";;",";")
  213.     return cookie
  214. endfunction

  215. function addDomain(cookie,domain)
  216.     pos=str.findstr(cookie,";")
  217.     t=str.strsub(cookie,0,pos+1)
  218.     end=str.strsub(cookie,pos+1,str.strleng(cookie))
  219.     ret=t&"domain="&domain&";"&end
  220.     return ret
  221. endfunction


  222. function setIECookie(weburl,cookie)
  223.     ret=dllcall("wininet.dll","bool","InternetSetCookieExA","char*",weburl,"char *","qq","char *","0350910378","int",系统常量.INTERNET_COOKIE_THIRD_PARTY,"int",0)
  224.     tt
  225.     str.split(cookie,";",tt)
  226.     count
  227.     arraysp.size(tt,count)
  228.     for(i=0;i<(count-1);i++)
  229.         tt1
  230.         str.split(str.strtrim(tt[i]),"=",tt1)
  231.         if(tt1[0]!="HttpOnly")
  232.             ret=dllcall("wininet.dll","BOOL","InternetSetCookieA","char *",weburl,"char *",tt1[0],"char *",tt1[1])
  233.         else
  234.             ret=dllcall("wininet.dll","BOOL","InternetSetCookieA","char *",weburl,"char *",tt1[0],"char *","")
  235.         endif
  236.         调试输出(i)
  237.     endfor
  238.    
  239. endfunction
  240. //获取网页打开的时间
  241. //参数1:网页地址
  242. //参数2:超时时间
  243. function getHtmlGetticktime(weburl,time)
  244.     http=com("Msxml2.XMLHTTP")
  245.     t=system.gettickcount()
  246.     http.Open("get",weburl,false)
  247.     http.setRequestHeader("Cache-Control","no-cache")
  248.     http.send("")
  249.     if(http.status == 200)
  250.         http=null
  251.         return system.gettickcount() - t
  252.     endif
  253.     while(http.status != 200)
  254.         if((system.gettickcount() - t)>time)
  255.             http=null
  256.             return system.gettickcount() - t
  257.         endif
  258.     endwhile
  259.    
  260. endfunction
  261. //获取北京时间
  262. function getNetTime()
  263.     http=com("MSXML2.ServerXMLHTTP.3.0")
  264.     http.Open("get","http://open.baidu.com/special/time/",false)
  265.     http.setRequestHeader("Cache-Control","no-cache")
  266.     http.send("")
  267.     ret=http.getResponseHeader("Date")
  268.     ret=str.strsub(ret,str.findstr(ret,",")+2,str.strleng(ret))
  269.    
  270.     day=str.strsub(ret,0,str.findstr(ret," "))
  271.     ret=str.strsub(ret,str.findstr(ret," ")+1,str.strleng(ret))
  272.     month=str.strsub(ret,0,str.findstr(ret," "))
  273.     ret=str.strsub(ret,str.findstr(ret," ")+1,str.strleng(ret))
  274.     year=str.strsub(ret,0,str.findstr(ret," "))
  275.     ret=str.strsub(ret,str.findstr(ret," ")+1,str.strleng(ret))
  276.     time=str.strsub(ret,0,str.findstr(ret," "))
  277.     m
  278.     select(month)
  279.         case "Jan":
  280.         m=1
  281.         case "Feb":
  282.         m=2
  283.         case "Mar":
  284.         m=3
  285.         case "Apr":
  286.         m=4
  287.         case "May":
  288.         m=5
  289.         case "Jun":
  290.         m=6
  291.         case "Jul":
  292.         m=7
  293.         case "Aug":
  294.         m=8
  295.         case "Sep":
  296.         m=9
  297.         case "Oct":
  298.         m=10
  299.         case "Nov":
  300.         m=11
  301.         case "Dec":
  302.         m=12      
  303.     endselect
  304.     http=null
  305.     return  datetime.add("h",8,year&"/"&m&"/"&day&" "&time)
  306. endfunction

  307. //把二进制流转码
  308. function BytesToBstr(body,Cset)
  309.     "UTF-8"
  310.     objstream =com("Adodb.Stream")
  311.     objstream.Type=1
  312.     objstream.Mode =3
  313.     objstream.Open
  314.     objstream.Write(body)
  315.     objstream.Position=0
  316.     objstream.Type=2
  317.     objstream.Charset=Cset
  318.     str=objstream.ReadText
  319.     objstream.Close
  320.     objstream=null
  321.     return str
  322. endfunction

  323. //把网络上的文件下载到本地
  324. //参数1:文件地址
  325. //参数2:文件本地存放的地址
  326. function 下载文件(文件地址,保存路径)
  327.     http=com("Microsoft.XMLHTTP")//创建一个com对象
  328.     http.Open("get", 文件地址, false)//以get模式打开文件
  329.     http.setRequestHeader("Cache-Control","no-cache")//不使用本地缓存数据,防止每次数据一样
  330.     http.send("")
  331.     t=system.gettickcount()
  332.     while(http.ReadyState != 4)
  333.         help.sleep(100)
  334.         if((system.gettickcount()-t)>5000)
  335.             return false
  336.         endif
  337.     endwhile
  338.     body=http.ResponseBody   
  339.    
  340.     http=null
  341.     stream=com("ADODB.Stream")//文件操作的对象
  342.     stream.Type=1//这个我也不懂,参数就是这么写的
  343.     stream.Open//打开文件流操作
  344.     stream.write(body)//把文件流写入内存(猜测的)
  345.     stream.saveToFile(保存路径,2)//然后把文件保存成二进制数据的指定文件
  346.     stream.Close//关闭文件流操作
  347.     stream=null
  348. endfunction

  349. //将一个文件以二进制的形式读取出来
  350. //存储在变量里面
  351. function readFile(path,&len)
  352.     ret
  353.     stream=com("ADODB.Stream")
  354.     stream.Type=1
  355.     stream.Open
  356.     stream.LoadFromFile(path)
  357.     ret=stream.Read
  358.     len=stream.Size
  359.     stream.Close
  360.     stream=null
  361.     return ret
  362. endfunction
  363. //保存指定编码的文本
  364. function SaveTextFile(sFilePath,s,sCharset="utf-8")
  365.     oStream=com("ADODB.Stream")
  366.     以文本模式
  367.     oStream.Type=2
  368.     oStream.Mode=3
  369.     oStream.Charset=sCharset
  370.     oStream.Open
  371.     oStream.WriteText(s)
  372.     oStream.SaveToFile(sFilePath,2)
  373.     oStream=null
  374. endfunction
  375. //执行js代码
  376. function runScriptCode(scriptcode,Script="JavaScript")
  377.     ScriptContorl=com("MSScriptControl.ScriptControl")
  378.     ScriptContorl.AllowUI=true
  379.     ScriptContorl.Language=Script
  380.     ret=ScriptContorl.Eval(scriptcode)
  381.     ojb=null
  382.     debug.print(ret)
  383.     return ret
  384. endfunction

  385. //encodeURI
  386. //要用encodeURI方式编码的字符串
  387. function encodeURI(str)
  388.     ScriptContorl=com("MSScriptControl.ScriptControl")
  389.     ScriptContorl.AllowUI=true
  390.     ScriptContorl.Language="JavaScript"//"JavaScript"
  391.     ScriptContorl.AddCode("function add(s1){return encodeURI(s1);}")
  392.     ret=ScriptContorl.Run("add",str)
  393.     ScriptContorl=null
  394.     return ret
  395. endfunction

  396. //decodeURI
  397. //要用decodeURI解码的字符串
  398. function decodeURI(str)
  399.     ScriptContorl=com("MSScriptControl.ScriptControl")
  400.     ScriptContorl.AllowUI=true
  401.     ScriptContorl.Language="JavaScript"//"JavaScript"
  402.     ScriptContorl.AddCode("function add(s1){return decodeURI(s1);}")
  403.     ret=ScriptContorl.Run("add",str)
  404.     ScriptContorl=null
  405.     return ret
  406. endfunction

  407. //escape
  408. //要用escape方式转码的字符串
  409. function escape(str)
  410.     ScriptContorl=com("MSScriptControl.ScriptControl")
  411.     ScriptContorl.AllowUI=true
  412.     ScriptContorl.Language="JavaScript"//"JavaScript"
  413.     ScriptContorl.AddCode("function add(s1){return escape(s1);}")
  414.     ret=ScriptContorl.Run("add",str)
  415.     ScriptContorl=null
  416.     return ret
  417. endfunction

  418. //unescape
  419. //要用unescape解码的字符串
  420. function unescape(str)
  421.     ScriptContorl=com("MSScriptControl.ScriptControl")
  422.     ScriptContorl.AllowUI=true
  423.     ScriptContorl.Language="JavaScript"//"JavaScript"
  424.     ScriptContorl.AddCode("function add(s1){return unescape(s1);}")
  425.     ret=ScriptContorl.Run("add",str)
  426.     ScriptContorl=null
  427.     return ret
  428. endfunction

  429. function sendEmail(你的邮箱帐号,你的邮箱密码,发送邮件地址,邮件主题,邮件内容,邮件附件)
  430.     //Dim You_ID,MS_Space,Email
  431.     //帐号和服务器分离
  432.     You_ID
  433.     str.split(你的邮箱帐号,"@",You_ID)
  434.     size
  435.     arraysp.size(You_ID,size)
  436.     if(size!=2)
  437.         return false
  438.     endif
  439.     //这个是必须要的,不过可以放心的事,不会通过微软发送邮件
  440.     MS_Space="http://schemas.microsoft.com/cdo/configuration/"
  441.     Email=com("CDO.Message")
  442.     //&#39;这个一定要和发送邮件的帐号一样
  443.     Email.From=你的邮箱帐号
  444.     //&#39;Execute "Email.to=发送邮件地址"
  445.     Email.CC=发送邮件地址
  446.     Email.Subject=邮件主题
  447.     Email.Textbody=邮件内容
  448.     if(邮件附件 !="")
  449.         Email.AddAttachment(邮件附件)
  450.     endif
  451.    
  452.     //&#39;发信端口
  453.    
  454.     Email.Configuration.Fields(MS_Space & "sendusing",2)
  455.     //&#39;SMTP服务器地址
  456.     Email.Configuration.Fields(MS_Space & "smtpserver","smtp." & You_ID[1])
  457.     //&#39;SMTP服务器端口
  458.     Email.Configuration.Fields(MS_Space & "smtpserverport",25)
  459.     Email.Configuration.Fields(MS_Space & "smtpauthenticate",1)
  460.     Email.Configuration.Fields(MS_Space & "sendusername",You_ID[0])
  461.     Email.Configuration.Fields(MS_Space & "sendpassword",你的邮箱密码)  
  462.     Email.Configuration.Fields.Update
  463.    
  464.     //&#39;发送邮件
  465.     Email.Send()
  466.     //&#39;关闭组件
  467.     Email=null
  468.     return true
  469.     //如果没有任何错误信息,则表示发送成功,否则发送失败
  470.    
  471. endfunction

  472. function sendEmaliex(你的邮箱帐号,你的邮箱密码,发送邮件地址,邮件主题,邮件内容,邮件附件)
  473.     You_ID
  474.     str.split(你的邮箱帐号,"@",You_ID)
  475.     size
  476.     arraysp.size(You_ID,size)
  477.     if(size!=2)
  478.         return false
  479.     endif
  480.     objMail=com("CDO.Message")
  481.     objConfig=com("CDO.Configuration")
  482.     objConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport",25)
  483.     objConfig.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing",2)
  484.     objConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver","smtp." & You_ID[1])
  485.     objConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate",1)
  486.     objConfig.Fields("http://schemas.microsoft.com/cdo/configuration/sendusername",You_ID[0])
  487.     objConfig.Fields("http://schemas.microsoft.com/cdo/configuration/sendpassword",你的邮箱密码)
  488.     objConfig.Fields("http://schemas.microsoft.com/cdo/configuration/languagecode","0x0804")
  489.     objConfig.Fields.Update()
  490.     objMail.Configuration=objConfig
  491.     objMail.Subject=邮件主题
  492.     objMail.From=你的邮箱帐号
  493.     objMail.To=发送邮件地址
  494.     objMail.HTMLBody=邮件内容
  495.     if(邮件附件 !="")
  496.         objMail.AddAttachment(邮件附件)
  497.     endif
  498.     ret=objMail.Send
  499.     help.messagebox(ret)
  500. endfunction

  501. endnamespace

  502. namespace fileEx

  503. //获取文件所在目录
  504. //path:文件路径
  505. //返回值:返回文件所在的目录
  506. function GetParentFolderName(path)
  507.     fs=com("Scripting.FileSystemObject")
  508.     ret=fs.GetParentFolderName(path)
  509.     fs=null
  510.     return ret
  511. endfunction

  512. //打开文件或者保存文件
  513. //type:0保存文件,1打开文件,2选择目录
  514. //filename:默认文件名
  515. //filter:过滤文件 All Files (*.*)|*.*|txt Files (*.*)|*.txt
  516. //返回值:返回打开或保存文件的路径,没有保存或者打开则返回空
  517. function dialog(type=0,FileName="",Filter="All Files (*.*)|*.*")
  518.     ret
  519.     f=com("MSComDlg.CommonDialog")
  520.     f.Filter=Filter
  521.     f.FilterIndex=2
  522.     f.FileName=FileName
  523.     f.MaxFileSize=512//文件大小
  524.     select(type)
  525.         case 1:
  526.         f.ShowOpen()
  527.         ret=f.FileName
  528.         if(ret==FileName)
  529.             ret=""
  530.         endif   
  531.         case 0:
  532.         f.ShowSave()
  533.         ret=f.FileName
  534.         if(ret==FileName)
  535.             ret=""
  536.         endif   
  537.         case 2:
  538.         ret=file.dialog(2)
  539.         default:
  540.         ret=""
  541.     endselect
  542.     f=null
  543.     return ret
  544. endfunction


  545. endnamespace

  546. namespace debug
  547. isprintf=true
  548. //个性化命令
  549. function print(outstr)
  550.     if(isprintf)
  551.         调试输出(system.getsystime(3)&": "&outstr)
  552.     endif
  553. endfunction
  554. endnamespace

  555. namespace 位操作
  556. //求int1的N次幂
  557. //参数1:数值1
  558. //参数2:数值2
  559. function 幂运算(int1,n)
  560.     ret=1
  561.     if(n==0)
  562.         return 1
  563.     endif
  564.     for(i=0;i<n;i++)
  565.         ret=ret * int1
  566.     endfor
  567.     return ret
  568. endfunction

  569. //1个数进行非操作
  570. //参数1:数值
  571. function Not(int1)
  572.    
  573.     string1=位操作.D2B(int1)
  574.     len=str.strleng(string1)
  575.     max
  576.     ret
  577.    
  578.     if(system.getsysinfo()== 6 || system.getsysinfo()== 8)
  579.         //表示是64位系统
  580.         for(i=0;i<64-len;i++)
  581.             string1= "0" & string1
  582.         endfor
  583.         max=64
  584.     else
  585.         //表示是32位系统
  586.         for(i=0;i<32-len;i++)
  587.             string1= "0" & string1
  588.         endfor
  589.         max=32
  590.     endif   
  591.     //非操作
  592.     for(i=0;i<max;i++)
  593.         if(type.cint(str.strsub(string1,i,i+1))==0)
  594.             ret=ret & "1"
  595.         else
  596.             ret=ret & "0"
  597.         endif
  598.     endfor
  599.    
  600.     return 位操作.B2D(ret)
  601. endfunction

  602. //两个数进行或操作
  603. //参数1:数值1
  604. //参数2:数值2
  605. function Or(int1,int2)
  606.     ret
  607.     string1=位操作.D2B(int1)
  608.     string2=位操作.D2B(int2)
  609.     len1=str.strleng(string1)
  610.     len2=str.strleng(string2)
  611.     maxlen
  612.     //下面是补0操作
  613.     if(len1>len2)
  614.         maxlen=len1
  615.         for(i=0;i<len1-len2;i++)
  616.             string2= "0" & string2
  617.         endfor
  618.     endif
  619.     if(len1<len2)
  620.         maxlen=len2
  621.         for(i=0;i<len2-len1;i++)
  622.             string1= "0" & string1
  623.         endfor
  624.     endif
  625.     if(len1==len2)
  626.         maxlen=len2
  627.     endif   
  628.     //或操作
  629.     for(i=0;i<maxlen;i++)
  630.         if(type.cint(str.strsub(string1,i,i+1))+type.cint(str.strsub(string2,i,i+1)) >=1)
  631.             ret=ret &"1"
  632.         else
  633.             ret=ret &"0"
  634.         endif
  635.     endfor
  636.    
  637.     return 位操作.B2D(ret)
  638. endfunction

  639. //两个数进行与操作
  640. //参数1:数值1
  641. //参数2:数值2
  642. function And(int1,int2)
  643.     ret
  644.     string1=位操作.D2B(int1)
  645.     string2=位操作.D2B(int2)
  646.     len1=str.strleng(string1)
  647.     len2=str.strleng(string2)
  648.     maxlen
  649.     //下面是补0操作
  650.     if(len1>len2)
  651.         maxlen=len1
  652.         for(i=0;i<len1-len2;i++)
  653.             string2= "0" & string2
  654.         endfor
  655.     endif
  656.     if(len1<len2)
  657.         maxlen=len2
  658.         for(i=0;i<len2-len1;i++)
  659.             string1= "0" & string1
  660.         endfor
  661.     endif
  662.     if(len1==len2)
  663.         maxlen=len2
  664.     endif   
  665.     //与操作
  666.     for(i=0;i<maxlen;i++)
  667.         if(type.cint(str.strsub(string1,i,i+1))+type.cint(str.strsub(string2,i,i+1)) == 2)
  668.             ret=ret &"1"
  669.         else
  670.             ret=ret &"0"
  671.         endif
  672.     endfor
  673.    
  674.     return 位操作.B2D(ret)
  675. endfunction

  676. //1个数进行非操作
  677. //参数1:数值
  678. function 非(int1)
  679.    
  680.     string1=位操作.D2B(int1)
  681.     len=str.strleng(string1)
  682.     max
  683.     ret
  684.    
  685.     if(system.getsysinfo()== 6 || system.getsysinfo()== 8)
  686.         //表示是64位系统
  687.         for(i=0;i<64-len;i++)
  688.             string1= "0" & string1
  689.         endfor
  690.         max=64
  691.     else
  692.         //表示是32位系统
  693.         for(i=0;i<32-len;i++)
  694.             string1= "0" & string1
  695.         endfor
  696.         max=32
  697.     endif   
  698.     //非操作
  699.     for(i=0;i<max;i++)
  700.         if(type.cint(str.strsub(string1,i,i+1))==0)
  701.             ret=ret & "1"
  702.         else
  703.             ret=ret & "0"
  704.         endif
  705.     endfor
  706.    
  707.     return 位操作.B2D(ret)
  708. endfunction

  709. //两个数进行或操作
  710. //参数1:数值1
  711. //参数2:数值2
  712. function 或(int1,int2)
  713.     ret
  714.     string1=位操作.D2B(int1)
  715.     string2=位操作.D2B(int2)
  716.     len1=str.strleng(string1)
  717.     len2=str.strleng(string2)
  718.     maxlen
  719.     //下面是补0操作
  720.     if(len1>len2)
  721.         maxlen=len1
  722.         for(i=0;i<len1-len2;i++)
  723.             string2= "0" & string2
  724.         endfor
  725.     endif
  726.     if(len1<len2)
  727.         maxlen=len2
  728.         for(i=0;i<len2-len1;i++)
  729.             string1= "0" & string1
  730.         endfor
  731.     endif
  732.     if(len1==len2)
  733.         maxlen=len2
  734.     endif   
  735.     //或操作
  736.     for(i=0;i<maxlen;i++)
  737.         if(type.cint(str.strsub(string1,i,i+1))+type.cint(str.strsub(string2,i,i+1)) >=1)
  738.             ret=ret &"1"
  739.         else
  740.             ret=ret &"0"
  741.         endif
  742.     endfor
  743.    
  744.     return 位操作.B2D(ret)
  745. endfunction

  746. //两个数进行与操作
  747. //参数1:数值1
  748. //参数2:数值2
  749. function 与(int1,int2)
  750.     ret
  751.     string1=位操作.D2B(int1)
  752.     string2=位操作.D2B(int2)
  753.     len1=str.strleng(string1)
  754.     len2=str.strleng(string2)
  755.     maxlen
  756.     //下面是补0操作
  757.     if(len1>len2)
  758.         maxlen=len1
  759.         for(i=0;i<len1-len2;i++)
  760.             string2= "0" & string2
  761.         endfor
  762.     endif
  763.     if(len1<len2)
  764.         maxlen=len2
  765.         for(i=0;i<len2-len1;i++)
  766.             string1= "0" & string1
  767.         endfor
  768.     endif
  769.     if(len1==len2)
  770.         maxlen=len2
  771.     endif   
  772.     //与操作
  773.     for(i=0;i<maxlen;i++)
  774.         if(type.cint(str.strsub(string1,i,i+1))+type.cint(str.strsub(string2,i,i+1)) == 2)
  775.             ret=ret &"1"
  776.         else
  777.             ret=ret &"0"
  778.         endif
  779.     endfor
  780.    
  781.     return 位操作.B2D(ret)
  782. endfunction

  783. //1个数进行右位移
  784. //参数1:数值
  785. //参数2:右移的位数
  786. function 右移(int1,byte)
  787.     string1=位操作.D2B(int1)
  788.     len=str.strleng(string1)
  789.     ret=str.strsub(string1,0,len-byte)
  790.     位操作.B2D(ret)
  791. endfunction

  792. //1个数进行左位移
  793. //参数1:数值
  794. //参数2:左移的位数
  795. function 左移(int1,byte)
  796.     string1=位操作.D2B(int1)
  797.     len=str.strleng(string1)
  798.    
  799.     for(i=0;i<byte;i++)
  800.         string1= string1 & "0"
  801.     endfor   
  802.     位操作.B2D(string1)
  803. endfunction

  804. //三目运算
  805. //参数1:条件
  806. //参数2:条件为真的结果
  807. //参数3:条件为假的结果
  808. function 三目运算(条件1,结果真,结果假)
  809.     if(条件1)
  810.         return 结果真
  811.     else
  812.         return 结果假
  813.     endif
  814. endfunction

  815. //将十进制数值转换成二进制
  816. //参数1:十进制数值
  817. function D2B(Dec)
  818.     ret
  819.     while(true)
  820.         ret=Dec%2 & ret
  821.         Dec=type.int(Dec/2)
  822.         if(Dec==0)
  823.             break
  824.         endif
  825.     endwhile
  826.     return ret
  827. endfunction

  828. //将二进制数值转换成十进制
  829. //参数1:二进制字符串
  830. function B2D(Byte)
  831.     ret
  832.     for(i=0;i<str.strleng(Byte);i++)
  833.         ret=ret * 2 + type.cint(str.strsub(Byte,i,i+1))
  834.     endfor   
  835.     return ret
  836. endfunction
  837. endnamespace

  838. namespace 系统常量
  839. WM_CREATE=1//应用程序创建一个窗口
  840. WM_DESTROY=2//一个窗口被销毁
  841. WM_MOVE=3//移动一个窗口
  842. WM_SIZE=5//改变一个窗口的大小
  843. WM_ACTIVATE=6//一个窗口被激活或失去激活状态
  844. WM_SETFOCUS=7//获得焦点后
  845. WM_KILLFOCUS=8//失去焦点
  846. WM_ENABLE=10//改变enable状态
  847. WM_SETREDRAW=11//设置窗口是否能重画
  848. WM_SETTEXT=12//应用程序发送此消息来设置一个窗口的文本
  849. WM_GETTEXT=13//应用程序发送此消息来复制对应窗口的文本到缓冲区
  850. WM_GETTEXTLENGTH=14//得到与一个窗口有关的文本的长度(不包含空字符)
  851. WM_PAINT=15//要求一个窗口重画自己
  852. WM_CLOSE=16//当一个窗口或应用程序要关闭时发送一个信号
  853. WM_QUERYENDSESSION=17//当用户选择结束对话框或程序自己调用ExitWindows函数
  854. WM_QUIT=18//用来结束程序运行或当程序调用postquitmessage函数
  855. WM_QUERYOPEN=19//当用户窗口恢复以前的大小位置时,把此消息发送给某个图标
  856. WM_ERASEBKGND=20//当窗口背景必须被擦除时(例在窗口改变大小时)
  857. WM_SYSCOLORCHANGE=21//当系统颜色改变时,发送此消息给所有顶级窗口
  858. WM_ENDSESSION=22//当系统进程发出WM_QUERYENDSESSION消息后,此消息发送给应用程序,通知它对话是否结束
  859. WM_SYSTEMERROR=23//暂无说明
  860. WM_SHOWWINDOW=24//当隐藏或显示窗口是发送此消息给这个窗口
  861. WM_ACTIVATEAPP=28//发此消息给应用程序哪个窗口是激活的,哪个是非激活的
  862. WM_FONTCHANGE=29//当系统的字体资源库变化时发送此消息给所有顶级窗口
  863. WM_TIMECHANGE=30//当系统的时间变化时发送此消息给所有顶级窗口
  864. WM_CANCELMODE=31//发送此消息来取消某种正在进行的摸态(操作)
  865. WM_SETCURSOR=32//如果鼠标引起光标在某个窗口中移动且鼠标输入没有被捕获时,就发消息给某个窗口
  866. WM_MOUSEACTIVATE=33//当光标在某个非激活的窗口中而用户正按着鼠标的某个键发送此消息给当前窗口
  867. WM_CHILDACTIVATE=34//发送此消息给MDI子窗口当用户点击此窗口的标题栏,或当窗口被激活,移动,改变大小
  868. WM_QUEUESYNC=35//此消息由基于计算机的训练程序发送,通过WH_JOURNALPALYBACK的hook程序分离出用户输入消息
  869. WM_GETMINMAXINFO=36//此消息发送给窗口当它将要改变大小或位置
  870. WM_PAINTICON=38//发送给最小化窗口当它图标将要被重画
  871. WM_ICONERASEBKGND=39//此消息发送给某个最小化窗口,仅当它在画图标前它的背景必须被重画
  872. WM_NEXTDLGCTL=40//发送此消息给一个对话框程序去更改焦点位置
  873. WM_SPOOLERSTATUS=42//每当打印管理列队增加或减少一条作业时发出此消息
  874. WM_DRAWITEM=43//当button,combobox,listbox,menu的可视外观改变时发送此消息给这些空件的所有者
  875. WM_MEASUREITEM=44//当button,combobox,listbox,listviewcontrol,ormenuitem被创建时发送此消息给控件的所有者
  876. WM_DELETEITEM=45//当thelistbox或combobox被销毁或当某些项被删除通过LB_DELETESTRING,LB_RESETCONTENT,CB_DELETESTRING,orCB_RESETCONTENT消息
  877. WM_VKEYTOITEM=46//此消息有一个LBS_WANTKEYBOARDINPUT风格的发出给它的所有者来响应WM_KEYDOWN消息
  878. WM_CHARTOITEM=47//此消息由一个LBS_WANTKEYBOARDINPUT风格的列表框发送给他的所有者来响应WM_CHAR消息
  879. WM_SETFONT=48//当绘制文本时程序发送此消息得到控件要用的颜色
  880. WM_GETFONT=49//应用程序发送此消息得到当前控件绘制文本的字体
  881. WM_SETHOTKEY=50//应用程序发送此消息让一个窗口与一个热键相关连
  882. WM_GETHOTKEY=51//应用程序发送此消息来判断热键与某个窗口是否有关联
  883. WM_QUERYDRAGICON=55//此消息发送给最小化窗口,当此窗口将要被拖放而它的类中没有定义图标,应用程序能返回一个图标或光标的句柄,当用户拖放图标时系统显示这个图标或光标
  884. WM_COMPAREITEM=57//发送此消息来判定combobox或listbox新增加的项的相对位置
  885. WM_GETOBJECT=61//暂无说明
  886. WM_COMPACTING=65//显示内存已经很少了
  887. WM_WINDOWPOSCHANGING=70//发送此消息给那个窗口的大小和位置将要被改变时,来调用setwindowpos函数或其它窗口管理函数
  888. WM_WINDOWPOSCHANGED=71//发送此消息给那个窗口的大小和位置已经被改变时,来调用setwindowpos函数或其它窗口管理函数
  889. WM_POWER=0//(适用于16位的windows)当系统将要进入暂停状态时发送此消息
  890. WM_COPYDATA=74//当一个应用程序传递数据给另一个应用程序时发送此消息
  891. WM_CANCELJOURNAL=75//当某个用户取消程序日志激活状态,提交此消息给程序
  892. WM_NOTIFY=78//当某个控件的某个事件已经发生或这个控件需要得到一些信息时,发送此消息给它的父窗口
  893. WM_INPUTLANGCHANGEREQUEST=80//当用户选择某种输入语言,或输入语言的热键改变
  894. WM_INPUTLANGCHANGE=81//当平台现场已经被改变后发送此消息给受影响的最顶级窗口
  895. WM_TCARD=82//当程序已经初始化windows帮助例程时发送此消息给应用程序
  896. WM_HELP=83//此消息显示用户按下了F1,如果某个菜单是激活的,就发送此消息个此窗口关联的菜单,否则就发送给有焦点的窗口,如果当前都没有焦点,就把此消息发送给当前激活的窗口
  897. WM_USERCHANGED=84//当用户已经登入或退出后发送此消息给所有的窗口,当用户登入或退出时系统更新用户的具体设置信息,在用户更新设置时系统马上发送此消息
  898. WM_NOTIFYFORMAT=85//公用控件,自定义控件和他们的父窗口通过此消息来判断控件是使用ANSI还是UNICODE结构在WM_NOTIFY消息,使用此控件能使某个控件与它的父控件之间进行相互通信
  899. WM_CONTEXTMENU=123//当用户某个窗口中点击了一下右键就发送此消息给这个窗口
  900. WM_STYLECHANGING=124//当调用SETWINDOWLONG函数将要改变一个或多个窗口的风格时发送此消息给那个窗口
  901. WM_STYLECHANGED=125//当调用SETWINDOWLONG函数一个或多个窗口的风格后发送此消息给那个窗口
  902. WM_DISPLAYCHANGE=126//当显示器的分辨率改变后发送此消息给所有的窗口
  903. WM_GETICON=127//此消息发送给某个窗口来返回与某个窗口有关连的大图标或小图标的句柄
  904. WM_SETICON=128//程序发送此消息让一个新的大图标或小图标与某个窗口关联
  905. WM_NCCREATE=129//当某个窗口第一次被创建时,此消息在WM_CREATE消息发送前发送
  906. WM_NCDESTROY=130//此消息通知某个窗口,非客户区正在销毁
  907. WM_NCCALCSIZE=131//当某个窗口的客户区域必须被核算时发送此消息
  908. WM_NCHITTEST=132//移动鼠标,按住或释放鼠标时发生
  909. WM_NCPAINT=133//程序发送此消息给某个窗口当它(窗口)的框架必须被绘制时
  910. WM_NCACTIVATE=134//此消息发送给某个窗口仅当它的非客户区需要被改变来显示是激活还是非激活状态
  911. WM_GETDLGCODE=135//发送此消息给某个与对话框程序关联的控件,widdows控制方位键和TAB键使输入进入此控件通过响应WM_GETDLGCODE消息,应用程序可以把他当成一个特殊的输入控件并能处理它
  912. WM_NCMOUSEMOVE=160//当光标在一个窗口的非客户区内移动时发送此消息给这个窗口//非客户区为:窗体的标题栏及窗的边框体
  913. WM_NCLBUTTONDOWN=161//当光标在一个窗口的非客户区同时按下鼠标左键时提交此消息
  914. WM_NCLBUTTONUP=162//当用户释放鼠标左键同时光标某个窗口在非客户区十发送此消息
  915. WM_NCLBUTTONDBLCLK=163//当用户双击鼠标左键同时光标某个窗口在非客户区十发送此消息
  916. WM_NCRBUTTONDOWN=164//当用户按下鼠标右键同时光标又在窗口的非客户区时发送此消息
  917. WM_NCRBUTTONUP=165//当用户释放鼠标右键同时光标又在窗口的非客户区时发送此消息
  918. WM_NCRBUTTONDBLCLK=166//当用户双击鼠标右键同时光标某个窗口在非客户区十发送此消息
  919. WM_NCMBUTTONDOWN=167//当用户按下鼠标中键同时光标又在窗口的非客户区时发送此消息
  920. WM_NCMBUTTONUP=168//当用户释放鼠标中键同时光标又在窗口的非客户区时发送此消息
  921. WM_NCMBUTTONDBLCLK=169//当用户双击鼠标中键同时光标又在窗口的非客户区时发送此消息
  922. WM_KEYFIRST=256//暂无说明
  923. WM_KEYDOWN=256//按下一个键
  924. WM_KEYUP=257//释放一个键
  925. WM_CHAR=258//按下某键,并已发出WM_KEYDOWN、WM_KEYUP消息
  926. WM_DEADCHAR=259//当用translatemessage函数翻译WM_KEYUP消息时发送此消息给拥有焦点的窗口
  927. WM_SYSKEYDOWN=260//当用户按住ALT键同时按下其它键时提交此消息给拥有焦点的窗口
  928. WM_SYSKEYUP=261//当用户释放一个键同时ALT键还按着时提交此消息给拥有焦点的窗口
  929. WM_SYSCHAR=262//当WM_SYSKEYDOWN消息被TRANSLATEMESSAGE函数翻译后提交此消息给拥有焦点的窗口
  930. WM_SYSDEADCHAR=263//当WM_SYSKEYDOWN消息被TRANSLATEMESSAGE函数翻译后发送此消息给拥有焦点的窗口
  931. WM_KEYLAST=264//暂无说明
  932. WM_INITDIALOG=272//在一个对话框程序被显示前发送此消息给它,通常用此消息初始化控件和执行其它任务
  933. WM_COMMAND=273//当用户选择一条菜单命令项或当某个控件发送一条消息给它的父窗口,一个快捷键被翻译
  934. WM_SYSCOMMAND=274//当用户选择窗口菜单的一条命令或当用户选择最大化或最小化时那个窗口会收到此消息
  935. WM_TIMER=275//发生了定时器事件
  936. WM_HSCROLL=276//当一个窗口标准水平滚动条产生一个滚动事件时发送此消息给那个窗口,也发送给拥有它的控件
  937. WM_VSCROLL=277//当一个窗口标准垂直滚动条产生一个滚动事件时发送此消息给那个窗口也,发送给拥有它的控件
  938. WM_INITMENU=278//当一个菜单将要被激活时发送此消息,它发生在用户菜单条中的某项或按下某个菜单键,它允许程序在显示前更改菜单
  939. WM_INITMENUPOPUP=279//当一个下拉菜单或子菜单将要被激活时发送此消息,它允许程序在它显示前更改菜单,而不要改变全部
  940. WM_MENUSELECT=287//当用户选择一条菜单项时发送此消息给菜单的所有者(一般是窗口)
  941. WM_MENUCHAR=288//当菜单已被激活用户按下了某个键(不同于加速键),发送此消息给菜单的所有者
  942. WM_ENTERIDLE=289//当一个模态对话框或菜单进入空载状态时发送此消息给它的所有者,一个模态对话框或菜单进入空载状态就是在处理完一条或几条先前的消息后没有消息它的列队中等待
  943. WM_MENURBUTTONUP=290//暂无说明
  944. WM_MENUDRAG=291//暂无说明
  945. WM_MENUGETOBJECT=292//暂无说明
  946. WM_UNINITMENUPOPUP=293//暂无说明
  947. WM_MENUCOMMAND=294//暂无说明
  948. WM_CHANGEUISTATE=295//暂无说明
  949. WM_UPDATEUISTATE=296//暂无说明
  950. WM_QUERYUISTATE=297//暂无说明
  951. WM_CTLCOLORMSGBOX=306//在windows绘制消息框前发送此消息给消息框的所有者窗口,通过响应这条消息,所有者窗口可以通过使用给定的相关显示设备的句柄来设置消息框的文本和背景颜色
  952. WM_CTLCOLOREDIT=307//当一个编辑型控件将要被绘制时发送此消息给它的父窗口
  953. WM_CTLCOLORLISTBOX=308//当一个列表框控件将要被绘制前发送此消息给它的父窗口
  954. WM_CTLCOLORBTN=309//当一个按钮控件将要被绘制时发送此消息给它的父窗口
  955. WM_CTLCOLORDLG=310//当一个对话框控件将要被绘制前发送此消息给它的父窗口
  956. WM_CTLCOLORSCROLLBAR=311//当一个滚动条控件将要被绘制时发送此消息给它的父窗口
  957. WM_CTLCOLORSTATIC=312//当一个静态控件将要被绘制时发送此消息给它的父窗口
  958. WM_MOUSEFIRST=512//暂无说明
  959. WM_MOUSEMOVE=512//移动鼠标
  960. WM_LBUTTONDOWN=513//按下鼠标左键
  961. WM_LBUTTONUP=514//释放鼠标左键
  962. WM_LBUTTONDBLCLK=515//双击鼠标左键
  963. WM_RBUTTONDOWN=516//按下鼠标右键
  964. WM_RBUTTONUP=517//释放鼠标右键
  965. WM_RBUTTONDBLCLK=518//双击鼠标右键
  966. WM_MBUTTONDOWN=519//按下鼠标中键
  967. WM_MBUTTONUP=520//释放鼠标中键
  968. WM_MBUTTONDBLCLK=521//双击鼠标中键
  969. WM_MOUSEWHEEL=522//当鼠标轮子转动时发送此消息个当前有焦点的控件
  970. WM_MOUSELAST=522//暂无说明
  971. WM_PARENTNOTIFY=528//当MDI子窗口被创建或被销毁,或用户按了一下鼠标键而光标在子窗口上时发送此消息给它的父窗口
  972. WM_ENTERMENULOOP=529//发送此消息通知应用程序的主窗口that已经进入了菜单循环模式
  973. WM_EXITMENULOOP=530//发送此消息通知应用程序的主窗口that已退出了菜单循环模式
  974. WM_NEXTMENU=531//暂无说明
  975. WM_SIZING=532//当用户正在调整窗口大小时发送此消息给窗口
  976. WM_CAPTURECHANGED=533//发送此消息给窗口当它失去捕获的鼠标时
  977. WM_MOVING=534//当用户在移动窗口时发送此消息,通过此消息应用程序可以监视窗口大小和位置也可以修改他们
  978. WM_POWERBROADCAST=536//此消息发送给应用程序来通知它有关电源管理事件
  979. WM_DEVICECHANGE=537//当设备的硬件配置改变时发送此消息给应用程序或设备驱动程序
  980. WM_IME_STARTCOMPOSITION=269//暂无说明
  981. WM_IME_ENDCOMPOSITION=270//暂无说明
  982. WM_IME_COMPOSITION=271//暂无说明
  983. WM_IME_KEYLAST=271//暂无说明
  984. WM_IME_SETCONTEXT=641//暂无说明
  985. WM_IME_NOTIFY=642//暂无说明
  986. WM_IME_CONTROL=643//暂无说明
  987. WM_IME_COMPOSITIONFULL=644//暂无说明
  988. WM_IME_SELECT=645//暂无说明
  989. WM_IME_CHAR=646//暂无说明
  990. WM_IME_REQUEST=648//暂无说明
  991. WM_IME_KEYDOWN=656//暂无说明
  992. WM_IME_KEYUP=657//暂无说明
  993. WM_MDICREATE=544//应用程序发送此消息给多文档的客户窗口来创建一个MDI子窗口
  994. WM_MDIDESTROY=545//应用程序发送此消息给多文档的客户窗口来关闭一个MDI子窗口
  995. WM_MDIACTIVATE=546//应用程序发送此消息给多文档的客户窗口通知客户窗口激活另一个MDI子窗口,当客户窗口收到此消息后,它发出WM_MDIACTIVE消息给MDI子窗口(未激活)激活它
  996. WM_MDIRESTORE=547//程序发送此消息给MDI客户窗口让子窗口从最大最小化恢复到原来大小
  997. WM_MDINEXT=548//程序发送此消息给MDI客户窗口激活下一个或前一个窗口
  998. WM_MDIMAXIMIZE=549//程序发送此消息给MDI客户窗口来最大化一个MDI子窗口
  999. WM_MDITILE=550//程序发送此消息给MDI客户窗口以平铺方式重新排列所有MDI子窗口
  1000. WM_MDICASCADE=551//程序发送此消息给MDI客户窗口以层叠方式重新排列所有MDI子窗口
  1001. WM_MDIICONARRANGE=552//程序发送此消息给MDI客户窗口重新排列所有最小化的MDI子窗口
  1002. WM_MDIGETACTIVE=553//程序发送此消息给MDI客户窗口来找到激活的子窗口的句柄
  1003. WM_MDISETMENU=560//程序发送此消息给MDI客户窗口用MDI菜单代替子窗口的菜单
  1004. WM_ENTERSIZEMOVE=561//暂无说明
  1005. WM_EXITSIZEMOVE=562//暂无说明
  1006. WM_DROPFILES=563//暂无说明
  1007. WM_MDIREFRESHMENU=564//暂无说明
  1008. WM_MOUSEHOVER=673//暂无说明
  1009. WM_MOUSELEAVE=675//暂无说明
  1010. WM_CUT=768//程序发送此消息给一个编辑框或combobox来删除当前选择的文本
  1011. WM_COPY=769//程序发送此消息给一个编辑框或combobox来复制当前选择的文本到剪贴板
  1012. WM_PASTE=770//程序发送此消息给editcontrol或combobox从剪贴板中得到数据
  1013. WM_CLEAR=771//程序发送此消息给editcontrol或combobox清除当前选择的内容
  1014. WM_UNDO=772//程序发送此消息给editcontrol或combobox撤消最后一次操作
  1015. WM_RENDERFORMAT=773//暂无说明
  1016. WM_RENDERALLFORMATS=774//暂无说明
  1017. WM_DESTROYCLIPBOARD=775//当调用ENPTYCLIPBOARD函数时发送此消息给剪贴板的所有者
  1018. WM_DRAWCLIPBOARD=776//当剪贴板的内容变化时发送此消息给剪贴板观察链的第一个窗口
  1019. WM_PAINTCLIPBOARD=777//当剪贴板包含CF_OWNERDIPLAY格式的数据并且剪贴板观察窗口的客户区需要重画
  1020. WM_VSCROLLCLIPBOARD=778//暂无说明
  1021. WM_SIZECLIPBOARD=779//当剪贴板包含CF_OWNERDIPLAY格式的数据并且剪贴板观察窗口的客户区域的大小已经改变是此消息通过剪贴板观察窗口发送给剪贴板的所有者
  1022. WM_ASKCBFORMATNAME=780//通过剪贴板观察窗口发送此消息给剪贴板的所有者来请求一个CF_OWNERDISPLAY格式的剪贴板的名字
  1023. WM_CHANGECBCHAIN=781//当一个窗口从剪贴板观察链中移去时发送此消息给剪贴板观察链的第一个窗口
  1024. WM_HSCROLLCLIPBOARD=782//此消息通过一个剪贴板观察窗口发送给剪贴板的所有者
  1025. WM_QUERYNEWPALETTE=783//此消息发送给将要收到焦点的窗口,此消息能使窗口在收到焦点时同时有机会实现他的逻辑调色板
  1026. WM_PALETTEISCHANGING=784//当一个应用程序正要实现它的逻辑调色板时发此消息通知所有的应用程序
  1027. WM_PALETTECHANGED=785//此消息在一个拥有焦点的窗口实现它的逻辑调色板后发送此消息给所有顶级并重叠的窗口,以此来改变系统调色板
  1028. WM_HOTKEY=786//当用户按下由REGISTERHOTKEY函数注册的热键时提交此消息
  1029. WM_PRINT=791//应用程序发送此消息仅当WINDOWS或其它应用程序发出一个请求要求绘制一个应用程序的一部分
  1030. WM_PRINTCLIENT=792//暂无说明
  1031. WM_HANDHELDFIRST=856//暂无说明
  1032. WM_HANDHELDLAST=863//暂无说明
  1033. WM_PENWINFIRST=896//暂无说明
  1034. WM_PENWINLAST=911//暂无说明
  1035. WM_COALESCE_FIRST=912//暂无说明
  1036. WM_COALESCE_LAST=927//暂无说明
  1037. WM_DDE_FIRST=992//暂无说明
  1038. WM_DDE_INITIATE=992//WM_DDE_FIRST+0,一个DDE客户程序提交此消息开始一个与服务器程序的会话来响应那个指定的程序和主题名
  1039. WM_DDE_TERMINATE=993//WM_DDE_FIRST+1,一个DDE应用程序(无论是客户还是服务器)提交此消息来终止一个会话
  1040. WM_DDE_ADVISE=994//WM_DDE_FIRST+2,一个DDE客户程序提交此消息给一个DDE服务程序来请求服务器每当数据项改变时更新它
  1041. WM_DDE_UNADVISE=995//WM_DDE_FIRST+3,一个DDE客户程序通过此消息通知一个DDE服务程序不更新指定的项或一个特殊的剪贴板格式的项
  1042. WM_DDE_ACK=996//WM_DDE_FIRST+4,此消息通知一个DDE(动态数据交换)程序已收到并正在处理WM_DDE_POKE,WM_DDE_EXECUTE,WM_DDE_DATA,WM_DDE_ADVISE,WM_DDE_UNADVISE,or WM_DDE_INITIAT消息
  1043. WM_DDE_DATA=997//WM_DDE_FIRST+5,一个DDE服务程序提交此消息给DDE客户程序来传递个一数据项给客户或通知客户的一条可用数据项
  1044. WM_DDE_REQUEST=998//WM_DDE_FIRST+6,一个DDE客户程序提交此消息给一个DDE服务程序来请求一个数据项的值
  1045. WM_DDE_POKE=999//WM_DDE_FIRST+7,一个DDE客户程序提交此消息给一个DDE服务程序,客户使用此消息来请求服务器接收一个未经同意的数据项
  1046. WM_DDE_EXECUTE=1000//WM_DDE_FIRST+8,一个DDE客户程序提交此消息给一个DDE服务程序来发送一个字符串给服务器让它象串行命令一样被处理,服务器通过提交WM_DDE_ACK消息来作回应
  1047. WM_DDE_LAST=1000//WM_DDE_FIRST+8
  1048. WM_APP=32768//暂无说明
  1049. WM_USER=1024//此消息能帮助应用程序自定义私有消息
  1050. WM_SETCURSOR=32//如果鼠标引起光标在某个窗口中移动且鼠标输入没有被捕获时,就发消息给某个窗口
  1051. WM_MOUSEACTIVATE=33//当光标在某个非激活的窗口中而用户正按着鼠标的某个键发送此消息给当前窗口
  1052. WM_SETHOTKEY=50//应用程序发送此消息让一个窗口与一个热键相关连
  1053. WM_GETHOTKEY=51//应用程序发送此消息来判断热键与某个窗口是否有关联
  1054. WM_INPUTLANGCHANGEREQUEST=80//当用户选择某种输入语言,或输入语言的热键改变
  1055. WM_CONTEXTMENU=123//当用户某个窗口中点击了一下右键就发送此消息给这个窗口
  1056. WM_NCHITTEST=132//移动鼠标,按住或释放鼠标时发生
  1057. WM_GETDLGCODE=135//发送此消息给某个与对话框程序关联的控件,widdows控制方位键和TAB键使输入进入此控件通过响应WM_GETDLGCODE消息,应用程序可以把他当成一个特殊的输入控件并能处理它
  1058. WM_NCLBUTTONDOWN=161//当光标在一个窗口的非客户区同时按下鼠标左键时提交此消息
  1059. WM_NCLBUTTONUP=162//当用户释放鼠标左键同时光标某个窗口在非客户区十发送此消息
  1060. WM_NCLBUTTONDBLCLK=163//当用户双击鼠标左键同时光标某个窗口在非客户区十发送此消息
  1061. WM_NCRBUTTONDOWN=164//当用户按下鼠标右键同时光标又在窗口的非客户区时发送此消息
  1062. WM_NCRBUTTONUP=165//当用户释放鼠标右键同时光标又在窗口的非客户区时发送此消息
  1063. WM_NCRBUTTONDBLCLK=166//当用户双击鼠标右键同时光标某个窗口在非客户区十发送此消息
  1064. WM_NCMBUTTONDOWN=167//当用户按下鼠标中键同时光标又在窗口的非客户区时发送此消息
  1065. WM_NCMBUTTONUP=168//当用户释放鼠标中键同时光标又在窗口的非客户区时发送此消息
  1066. WM_NCMBUTTONDBLCLK=169//当用户双击鼠标中键同时光标又在窗口的非客户区时发送此消息
  1067. WM_KEYDOWN=256//按下一个键
  1068. WM_KEYUP=257//释放一个键
  1069. WM_CHAR=258//按下某键,并已发出WM_KEYDOWN、WM_KEYUP消息
  1070. WM_SYSKEYDOWN=260//当用户按住ALT键同时按下其它键时提交此消息给拥有焦点的窗口
  1071. WM_SYSKEYUP=261//当用户释放一个键同时ALT键还按着时提交此消息给拥有焦点的窗口
  1072. WM_COMMAND=273//当用户选择一条菜单命令项或当某个控件发送一条消息给它的父窗口,一个快捷键被翻译
  1073. WM_INITMENU=278//当一个菜单将要被激活时发送此消息,它发生在用户菜单条中的某项或按下某个菜单键,它允许程序在显示前更改菜单
  1074. WM_MENUCHAR=288//当菜单已被激活用户按下了某个键(不同于加速键),发送此消息给菜单的所有者
  1075. WM_MOUSEMOVE=512//移动鼠标
  1076. WM_LBUTTONDOWN=513//按下鼠标左键
  1077. WM_LBUTTONUP=514//释放鼠标左键
  1078. WM_LBUTTONDBLCLK=515//双击鼠标左键
  1079. WM_RBUTTONDOWN=516//按下鼠标右键
  1080. WM_RBUTTONUP=517//释放鼠标右键
  1081. WM_RBUTTONDBLCLK=518//双击鼠标右键
  1082. WM_MBUTTONDOWN=519//按下鼠标中键
  1083. WM_MBUTTONUP=520//释放鼠标中键
  1084. WM_MBUTTONDBLCLK=521//双击鼠标中键
  1085. WM_MOUSEWHEEL=522//当鼠标轮子转动时发送此消息个当前有焦点的控件
  1086. WM_PARENTNOTIFY=528//当MDI子窗口被创建或被销毁,或用户按了一下鼠标键而光标在子窗口上时发送此消息给它的父窗口
  1087. WM_CAPTURECHANGED=533//发送此消息给窗口当它失去捕获的鼠标时
  1088. WM_HOTKEY=786//当用户按下由REGISTERHOTKEY函数注册的热键时提交此消息
  1089. LVM_GETHOTCURSOR=4159//如果激活了热点跟随踪,当鼠标在某个项目上时,返回其句柄
  1090. LVM_GETHOTITEM=4157//取鼠标指针指向项目的索引
  1091. LVM_GETHOVERTIME=4168//暂无说明取鼠标在项目上停留的时间?
  1092. LVM_SETHOTITEM=4156//置鼠标指针指向项目的索引暂无说明
  1093. LVS_NOSORTHEADER=32768//列头显示为平面,不响应鼠标点击(详细资料模式)
  1094. BN_CLICKED=0//用户单击了按钮
  1095. BN_DBLCLK=5//BN_DOUBLECLICKED用户双击了按钮
  1096. BN_DISABLE=4//按钮被禁止
  1097. BN_DOUBLECLICKED=5//用户双击了按钮
  1098. BN_HILITE=2//用户加亮了按钮
  1099. BN_KILLFOCUS=7//暂无说明
  1100. BN_PAINT=1//按钮应当重画
  1101. BN_PUSHED=2//BN_HILITE用户加亮了按钮
  1102. BN_SETFOCUS=6//暂无说明
  1103. BN_UNHILITE=3//加亮应当去掉
  1104. BN_UNPUSHED=3//BN_UNHILITE加亮应当去掉
  1105. CBN_CLOSEUP=8//组合框的列表框被关闭
  1106. CBN_DBLCLK=2//用户双击了一个字符串
  1107. CBN_DROPDOWN=7//组合框的列表框被拉出
  1108. CBN_EDITCHANGE=5//用户修改了编辑框中的文本
  1109. CBN_EDITUPDATE=6//编辑框内的文本即将更新
  1110. CBN_ERRSPACE=-1//组合框内存不足
  1111. CBN_KILLFOCUS=4//组合框失去输入焦点
  1112. CBN_SELCHANGE=1//组合框中选择了一项
  1113. CBN_SELENDCANCEL=10//用户的选择应当被取消
  1114. CBN_SELENDOK=9//用户的选择是合法的
  1115. CBN_SETFOCUS=3//组合框获得输入焦点
  1116. LBN_DBLCLK=2//用户双击了一项
  1117. LBN_ERRSPACE=2//列表框内存不够
  1118. LBN_KILLFOCUS=5//列表框正在失去输入焦点
  1119. LBN_SELCANCEL=3//选择被取消
  1120. LBN_SELCHANGE=1//选择了另一项
  1121. LBN_SETFOCUS=4//列表框获得输入焦点
  1122. EN_CHANGE=768//编辑框中的文本己更新
  1123. EN_CORRECTTEXT=1797//暂无说明
  1124. EN_DROPFILES=1795//暂无说明
  1125. EN_ERRSPACE=1280//编辑框内存不足
  1126. EN_HSCROLL=1537//用户点击了水平滚动条
  1127. EN_IMECHANGE=1799//暂无说明
  1128. EN_KILLFOCUS=512//编辑框正在失去输入焦点
  1129. EN_MAXTEXT=1281//插入的内容被截断
  1130. EN_MSGFILTER=1792//暂无说明
  1131. EN_OLEOPFAILED=1801//暂无说明
  1132. EN_PROTECTED=1796//暂无说明
  1133. EN_REQUESTRESIZE=1793//暂无说明
  1134. EN_SAVECLIPBOARD=1800//暂无说明
  1135. EN_SELCHANGE=1794//暂无说明
  1136. EN_SETFOCUS=256//编辑框获得输入焦点
  1137. EN_STOPNOUNDO=1798//暂无说明
  1138. EN_UPDATE=1024//编辑框中的文本将要更新
  1139. EN_VSCROLL=1538//用户点击了垂直滚动条消息含义
  1140. EM_AUTOURLDETECT=1115//暂无说明
  1141. EM_CANPASTE=1074//暂无说明
  1142. EM_CANREDO=1109//暂无说明
  1143. EM_CANUNDO=198//暂无说明
  1144. EM_CHARFROMPOS=215//暂无说明
  1145. EM_CONVPOSITION=1132//暂无说明
  1146. EM_DISPLAYBAND=1075//暂无说明
  1147. EM_EMPTYUNDOBUFFER=205//暂无说明
  1148. EM_EXGETSEL=1076//暂无说明
  1149. EM_EXLIMITTEXT=1077//暂无说明
  1150. EM_EXLINEFROMCHAR=1078//暂无说明
  1151. EM_EXSETSEL=1079//暂无说明
  1152. EM_FINDTEXT=1080//暂无说明
  1153. EM_FINDTEXTEX=1103//暂无说明
  1154. EM_FINDTEXTEXW=1148//暂无说明
  1155. EM_FINDTEXTW=1147//暂无说明
  1156. EM_FINDWORDBREAK=1100//暂无说明
  1157. EM_FMTLINES=200//暂无说明
  1158. EM_FORMATRANGE=1081//暂无说明
  1159. EM_GETAUTOURLDETECT=1116//暂无说明
  1160. EM_GETBIDIOPTIONS=1225//暂无说明
  1161. EM_GETCHARFORMAT=1082//暂无说明
  1162. EM_GETEDITSTYLE=1229//暂无说明
  1163. EM_GETEVENTMASK=1083//暂无说明
  1164. EM_GETFIRSTVISIBLELINE=206//暂无说明
  1165. EM_GETHANDLE=189//暂无说明
  1166. EM_GETIMECOLOR=1129//暂无说明
  1167. EM_GETIMECOMPMODE=1146//暂无说明
  1168. EM_GETIMEMODEBIAS=1151//暂无说明
  1169. EM_GETIMEOPTIONS=1131//暂无说明
  1170. EM_GETIMESTATUS=217//暂无说明
  1171. EM_GETLANGOPTIONS=1145//暂无说明
  1172. EM_GETLIMITTEXT=213//暂无说明
  1173. EM_GETLINE=196//暂无说明
  1174. EM_GETLINECOUNT=186//暂无说明
  1175. EM_GETMARGINS=212//暂无说明
  1176. EM_GETMODIFY=184//暂无说明
  1177. EM_GETOLEINTERFACE=1084//暂无说明
  1178. EM_GETOPTIONS=1102//暂无说明
  1179. EM_GETPARAFORMAT=1085//暂无说明
  1180. EM_GETPASSWORDCHAR=210//暂无说明
  1181. EM_GETPUNCTUATION=1125//暂无说明
  1182. EM_GETRECT=178//暂无说明
  1183. EM_GETREDONAME=1111//暂无说明
  1184. EM_GETSCROLLPOS=1245//暂无说明
  1185. EM_GETSEL=176//暂无说明
  1186. EM_GETSELTEXT=1086//暂无说明
  1187. EM_GETTEXTEX=1118//暂无说明
  1188. EM_GETTEXTLENGTHEX=1119//暂无说明
  1189. EM_GETTEXTMODE=1114//暂无说明
  1190. EM_GETTEXTRANGE=1099//暂无说明
  1191. EM_GETTHUMB=190//暂无说明
  1192. EM_GETTYPOGRAPHYOPTIONS=1227//暂无说明
  1193. EM_GETUNDONAME=1110//暂无说明
  1194. EM_GETWORDBREAKPROC=209//暂无说明
  1195. EM_GETWORDBREAKPROCEX=1104//暂无说明
  1196. EM_GETWORDWRAPMODE=1127//暂无说明
  1197. EM_GETZOOM=1248//暂无说明
  1198. EM_HIDESELECTION=1087//暂无说明
  1199. EM_LIMITTEXT=197//暂无说明
  1200. EM_LINEFROMCHAR=201//暂无说明
  1201. EM_LINEINDEX=187//暂无说明
  1202. EM_LINELENGTH=193//暂无说明
  1203. EM_LINESCROLL=182//暂无说明
  1204. EM_OUTLINE=1244//暂无说明
  1205. EM_PASTESPECIAL=1088//暂无说明
  1206. EM_POSFROMCHAR=214//暂无说明
  1207. EM_RECONVERSION=1149//暂无说明
  1208. EM_REDO=1108//暂无说明
  1209. EM_REPLACESEL=194//暂无说明
  1210. EM_REQUESTRESIZE=1089//暂无说明
  1211. EM_SCROLL=181//暂无说明
  1212. EM_SCROLLCARET=183//暂无说明
  1213. EM_SELECTIONTYPE=1090//暂无说明
  1214. EM_SETBIDIOPTIONS=1224//暂无说明
  1215. EM_SETBKGNDCOLOR=1091//暂无说明
  1216. EM_SETCHARFORMAT=1092//暂无说明
  1217. EM_SETEDITSTYLE=1228//暂无说明
  1218. EM_SETEVENTMASK=1093//暂无说明
  1219. EM_SETFONTSIZE=1247//暂无说明
  1220. EM_SETHANDLE=188//暂无说明
  1221. EM_SETIMECOLOR=1128//暂无说明
  1222. EM_SETIMEMODEBIAS=1150//暂无说明
  1223. EM_SETIMEOPTIONS=1130//暂无说明
  1224. EM_SETIMESTATUS=216//暂无说明
  1225. EM_SETLANGOPTIONS=1144//暂无说明
  1226. EM_SETLIMITTEXT=197//EM_LIMITTEXT
  1227. EM_SETMARGINS=211//暂无说明
  1228. EM_SETMODIFY=185//暂无说明
  1229. EM_SETOLECALLBACK=1094//暂无说明
  1230. EM_SETOPTIONS=1101//暂无说明
  1231. EM_SETPALETTE=1117//暂无说明
  1232. EM_SETPARAFORMAT=1095//暂无说明
  1233. EM_SETPASSWORDCHAR=204//暂无说明
  1234. EM_SETPUNCTUATION=1124//暂无说明
  1235. EM_SETREADONLY=207//暂无说明
  1236. EM_SETRECT=179//暂无说明
  1237. EM_SETRECTNP=180//暂无说明
  1238. EM_SETSCROLLPOS=1246//暂无说明
  1239. EM_SETSEL=177//暂无说明
  1240. EM_SETTABSTOPS=203//暂无说明
  1241. EM_SETTARGETDEVICE=1096//暂无说明
  1242. EM_SETTEXTEX=1121//暂无说明
  1243. EM_SETTEXTMODE=1113//暂无说明
  1244. EM_SETTYPOGRAPHYOPTIONS=1226//暂无说明
  1245. EM_SETUNDOLIMIT=1106//暂无说明
  1246. EM_SETWORDBREAKPROC=208//暂无说明
  1247. EM_SETWORDBREAKPROCEX=1105//暂无说明
  1248. EM_SETWORDWRAPMODE=1126//暂无说明
  1249. EM_SETZOOM=1249//暂无说明
  1250. EM_SHOWSCROLLBAR=1120//暂无说明
  1251. EM_STOPGROUPTYPING=1112//暂无说明
  1252. EM_STREAMIN=1097//暂无说明
  1253. EM_STREAMOUT=1098//暂无说明
  1254. EM_UNDO=199//暂无说明
  1255. CBN_CLOSEUP=8//组合框的列表框被关闭
  1256. CBN_DBLCLK=2//用户双击了一个字符串
  1257. CBN_DROPDOWN=7//组合框的列表框被拉出
  1258. CBN_EDITCHANGE=5//用户修改了编辑框中的文本
  1259. CBN_EDITUPDATE=6//编辑框内的文本即将更新
  1260. CBN_ERRSPACE=-1//组合框内存不足
  1261. CBN_KILLFOCUS=4//组合框失去输入焦点
  1262. CBN_SELCHANGE=1//组合框中选择了一项
  1263. CBN_SELENDCANCEL=10//用户的选择应当被取消
  1264. CBN_SELENDOK=9//用户的选择是合法的
  1265. CBN_SETFOCUS=3//组合框获得输入焦点
  1266. LBN_DBLCLK=2//用户双击了一项
  1267. LBN_ERRSPACE=-2//列表框内存不够
  1268. LBN_KILLFOCUS=5//列表框正在失去输入焦点
  1269. LBN_SELCANCEL=3//选择被取消
  1270. LBN_SELCHANGE=1//选择了另一项
  1271. LBN_SETFOCUS=4//列表框获得输入焦点
  1272. TVM_CREATEDRAGIMAGE=4370//创建RAG图象
  1273. TVM_DELETEITEM=4353//删除项目
  1274. TVM_EDITLABELA=4366//编辑标签A
  1275. TVM_ENDEDITLABELNOW=4374//结束编辑新标签
  1276. TVM_ENSUREVISIBLE=4372//保证显示
  1277. TVM_EXPAND=4354//扩展
  1278. TVM_GETBKCOLOR=4383//取背景颜色
  1279. TVM_GETCOUNT=4357//取数量
  1280. TVM_GETEDITCONTROL=4367//取编辑控制器
  1281. TVM_GETIMAGELIST=4360//取列表图片,返回图象的句柄
  1282. TVM_GETINDENT=4358//取缩进?
  1283. TVM_GETINSERTMARKCOLOR=4390//取插入标志色
  1284. TVM_GETISEARCHSTRINGA=4375//取搜索文本A
  1285. TVM_GETITEMA=4364//取项目A,要用结构
  1286. TVM_GETITEMHEIGHT=4380//取项目的距离(行距)
  1287. TVM_GETITEMRECT=4356//暂无说明
  1288. TVM_GETITEMSTATE=4391//取项目状态
  1289. TVM_GETLINECOLOR=4393//取连线颜色
  1290. TVM_GETNEXTITEM=4362//取下一项目?
  1291. TVM_GETSCROLLTIME=4386//取卷项目?
  1292. TVM_GETTEXTCOLOR=4384//取文本颜色
  1293. TVM_GETTOOLTIPS=4377//取工具提示
  1294. TVM_GETVISIBLECOUNT=4368//取可视数量
  1295. TVM_GETUNICODEFORMAT=8198//取UNICODE格式
  1296. TVM_HITTEST=4369//点击
  1297. TVM_INSERTITEMA=4352//插入项目A
  1298. TVM_MAPACCIDTOHTREEITEM=4394//暂无说明
  1299. TVM_MAPHTREEITEMTOACCID=4395//暂无说明
  1300. TVM_SELECTITEM=4363//选择项目
  1301. TVM_SETBKCOLOR=4381//置背景色
  1302. TVM_SETIMAGELIST=4361//设置图象列表
  1303. TVM_SETINDENT=4359//设置缩进
  1304. TVM_SETINSERTMARK=4378//设置插入标志
  1305. TVM_SETINSERTMARKCOLOR=4389//置插入标志色
  1306. TVM_SETITEMA=4365//设置项目A
  1307. TVM_SETITEMHEIGHT=4379//置项目的距离(行距)
  1308. TVM_SETLINECOLOR=4392//置连线颜色
  1309. TVM_SETSCROLLTIME=4385//设置滚动条跳跃时的数量
  1310. TVM_SETTEXTCOLOR=4382//设置文本颜色
  1311. TVM_SETTOOLTIPS=4376//设置工具提示
  1312. TVM_SETUNICODEFORMAT=8197//设置UNICODE格式
  1313. TVM_SORTCHILDREN=4371//分类—子
  1314. TVM_SORTCHILDRENCB=4373//分类—子—CB
  1315. TVM_EDITLABELW=4417//编辑标签W
  1316. TVM_GETISEARCHSTRINGW=4416//取搜索文本W
  1317. TVM_GETITEMW=4414//取项目M,要用结构?
  1318. TVM_INSERTITEMW=4402//插入项目W
  1319. TVM_SETITEMW=4415//设置项目W
  1320. TVGN_CARET=9//当前的项目
  1321. TVGN_CHILD=4//第一个子项目
  1322. TVGN_DROPHILITE=8//拖放的项目
  1323. TVGN_FIRSTVISIBLE=5//第一个可视的
  1324. TVGN_LASTVISIBLE=10//最后可视的
  1325. TVGN_NEXT=1//下一条
  1326. TVGN_NEXTVISIBLE=6//下一条可视的
  1327. TVGN_PARENT=3//父
  1328. TVGN_PREVIOUS=2//返回上一级
  1329. TVGN_PREVIOUSVISIBLE=7//返回上一级可视的
  1330. TVGN_ROOT=0//根
  1331. TVIF_CHILDREN=64//是否有子
  1332. TVIF_DI_SETITEM=4096//置项目
  1333. TVIF_HANDLE=16//句柄
  1334. TVIF_IMAGE=2//图象
  1335. TVIF_INTEGRAL=128//项目的画面高度。 这一个画面高度在标准项目画面高度的增量。
  1336. TVIF_PARAM=4//项目数值
  1337. TVIF_SELECTEDIMAGE=32//选择图象
  1338. TVIF_STATE=8//状态
  1339. TVIF_TEXT=1//文本
  1340. TVIF_ALL=39//全部,文本+图象+选择图象+项目数值 1+2+4+32=39
  1341. TVIS_BOLD=16//加粗
  1342. TVIS_CUT=4//暂无说明
  1343. TVIS_DROPHILITED=8//拖放目标
  1344. TVIS_EXPANDED=32//扩展
  1345. TVIS_EXPANDEDONCE=64//曾经扩展过一次
  1346. TVIS_EXPANDPARTIAL=128//对项目部份扩展
  1347. TVIS_OVERLAYMASK=3840//暂无说明
  1348. TVIS_STATEIMAGEMASK=61440//暂无说明
  1349. TVIS_SELECTED=2//选择
  1350. TVIS_SELECTEDA=8192//选中
  1351. TVIS_NOSELECTEDA=4096//没有选中
  1352. TVI_FIRST=4294901761//在列表首部加入
  1353. TVI_LAST=4294901762//在列表尾部插入
  1354. TVI_ROOT=4294901760//在根部插入
  1355. TVI_SORT=4294901763//插入项目时按字母顺序排列
  1356. TVS_HASBUTTONS=1//使用加减框
  1357. TVS_HASLINES=2//使用连线
  1358. TVS_LINESATROOT=4//使用根部线
  1359. TVS_EDITLABELS=8//允许编辑
  1360. TVS_DISABLEDRAGDROP=16//禁止拖动
  1361. TVS_SHOWSELALWAYS=32//始终显示选择项
  1362. TVS_RTLREADING=64//右对齐?
  1363. TVS_NOTOOLTIPS=128//不使用工具提示
  1364. TVS_CHECKBOXES=256//使用复选框
  1365. TVS_TRACKSELECT=512//使用热点跟踪
  1366. TVS_SINGLEEXPAND=1024//单击打开树
  1367. TVS_INFOTIP=2048//支持发送 TVN_GETINFOTIP 消息获得提示标签信息
  1368. TVS_FULLROWSELECT=4096//整行选择,此风格不能与TVS_HASLINES同时使用
  1369. TVS_NOSCROLL=8192//不使用滚动条
  1370. TVS_NONEVENHEIGHT=16384//和 TVM_SETITEMHEIGHT 消息共同预设一个项目的高度
  1371. //TVS_NOHSCROLL=32768//禁止水平滚动条
  1372. LVM_APPROXIMATEVIEWRECT=4160//计算显示一个项目所需的宽度和高度
  1373. LVM_ARRANGE=4118//在图像显示时排列项目
  1374. LVM_CREATEDRAGIMAGE=4129//为指定的项目产生一个拖曳图像列表。
  1375. LVM_CANCELEDITLABEL=0//[暂无消息值]取消一个项目文本编辑运算
  1376. LVM_DELETEALLITEMS=4105//清空
  1377. LVM_DELETECOLUMN=4124//删除一列
  1378. LVM_DELETEITEM=4104//删除一行
  1379. LVM_EDITLABELA=4119//编辑指定位置
  1380. LVM_ENABLEGROUPVIEW=4253//显示或禁止显示项目
  1381. LVM_ENSUREVISIBLE=4115//保证显示,并决定一个项目的全部或部份,是否可视
  1382. LVM_FINDITEMA=4109//寻找项目
  1383. LVM_GETBKCOLOR=4096//取背景颜色
  1384. LVM_GETBKIMAGEA=4165//取背景图片
  1385. LVM_GETCALLBACKMASK=4106//取回调掩码
  1386. LVM_GETCOLUMNA=4121//取一个列的属性
  1387. LVM_GETCOLUMNORDERARRAY=4155//返回当前列中的左右对齐方式
  1388. LVM_GETCOLUMNWIDTH=4125//取指定列宽度
  1389. LVM_GETCOUNTPERPAGE=4136//取当前列表框中可视的项目数量
  1390. LVM_GETEDITCONTROL=4120//当列表框在进行编辑时,返回这引编辑框的句柄
  1391. LVM_GETEXTENDEDLISTVIEWSTYLE=4151//取当前扩展风格
  1392. LVM_GETGROUPINFO=4245//取块的信息
  1393. LVM_GETGROUPMETRICS=4252//取块的规格
  1394. LVM_GETHEADER=4127//取列表框标题的句柄
  1395. LVM_GETHOTCURSOR=4159//如果激活了热点跟随踪,当鼠标在某个项目上时,返回其句柄
  1396. LVM_GETHOTITEM=4157//取鼠标指针指向项目的索引
  1397. LVM_GETHOVERTIME=4168//暂无说明取鼠标在项目上停留的时间?
  1398. LVM_GETIMAGELIST=4098//取图片列表句柄
  1399. LVM_GETINSERTMARK=4263//取插入掩码
  1400. LVM_GETINSERTMARKCOLOR=4267//取插入掩码颜色
  1401. LVM_GETINSERTMARKRECT=4265//取插入掩码的矩形范围
  1402. LVM_GETISEARCHSTRINGA=4148//暂无说明
  1403. LVM_GETITEMA=4101//取项目
  1404. LVM_GETITEMCOUNT=4100//取项目总数
  1405. LVM_GETITEMPOSITION=4112//取指定项目的显示坐标
  1406. LVM_GETITEMRECT=4110//取指定项目的矩形范围
  1407. LVM_GETITEMSPACING=4147//取项目之间的间隔距离
  1408. LVM_GETITEMSTATE=4140//取项目的状态
  1409. LVM_GETITEMTEXTA=4141//取项目正文
  1410. LVM_GETNEXTITEM=4108//取下一项目
  1411. LVM_GETNUMBEROFWORKAREAS=4169//取当前列表框工作区中的项目数量
  1412. LVM_GETORIGIN=4137//暂无说明
  1413. LVM_GETOUTLINECOLOR=4272//取列表框边框颜色
  1414. LVM_GETSELECTEDCOLUMN=4270//取选择列
  1415. LVM_GETSELECTEDCOUNT=4146//取被选择项目数
  1416. LVM_GETSELECTIONMARK=4162//取现行选择项目
  1417. LVM_GETSTRINGWIDTHA=4113//取显示一个文本所需要的列宽度
  1418. LVM_GETSUBITEMRECT=4152//取子项目的矩形范围
  1419. LVM_GETTEXTBKCOLOR=4133//取正文背景色
  1420. LVM_GETTEXTCOLOR=4131//取正文颜色
  1421. LVM_GETTILEINFO=4261//暂无说明
  1422. LVM_GETTILEVIEWINFO=4259//暂无说明
  1423. LVM_GETTOOLTIPS=4174//取工具提示
  1424. LVM_GETTOPINDEX=4135//取在可视范围中第一个项目的索引
  1425. LVM_GETUNICODEFORMAT=8198//取UNICODE格式
  1426. LVM_GETVIEW=4239//取超级列表框当前的类型
  1427. LVM_GETVIEWRECT=4130//取当前所有项目所占用的矩形范围
  1428. LVM_GETWORKAREAS=4166//取工作区的矩形范围
  1429. LVM_HASGROUP=4257//查询群组是否在使用
  1430. LVM_HITTEST=4114//暂无说明
  1431. LVM_INSERTCOLUMNA=4123//插入列
  1432. LVM_INSERTGROUP=4241//插入块
  1433. LVM_INSERTGROUPSORTED=4255//插入块种类
  1434. LVM_INSERTITEMA=4103//插入项目
  1435. LVM_INSERTMARKHITTEST=4264//暂无说明
  1436. LVM_ISGROUPVIEWENABLED=4271//块检视是否激活
  1437. LVM_MOVEGROUP=4247//块移动
  1438. LVM_MOVEITEMTOGROUP=4250//移动项目到块
  1439. LVM_REDRAWITEMS=4117//重画项目
  1440. LVM_REMOVEALLGROUPS=4256//移动全部块
  1441. LVM_REMOVEGROUP=4246//移动块
  1442. LVM_SCROLL=4116//移动滚动条
  1443. LVM_SETBKCOLOR=4097//设置背景色
  1444. LVM_SETBKIMAGEA=4164//设置背景图片
  1445. LVM_SETCALLBACKMASK=4107//设置回调掩码
  1446. LVM_SETCOLUMNA=4122//设置列的属性
  1447. LVM_SETCOLUMNORDERARRAY=4154//设置列显示的排序
  1448. LVM_SETCOLUMNWIDTH=4126//设置列宽
  1449. LVM_SETEXTENDEDLISTVIEWSTYLE=4150//设置扩展风格
  1450. LVM_SETGROUPINFO=4243//设置块信息
  1451. LVM_SETGROUPMETRICS=4251//暂无说明
  1452. LVM_SETHOTCURSOR=4158//暂无说明
  1453. LVM_SETHOTITEM=4156//置鼠标指针指向项目的索引暂无说明
  1454. LVM_SETHOVERTIME=4167//暂无说明
  1455. LVM_SETICONSPACING=4149//置图标间隔
  1456. LVM_SETIMAGELIST=4099//置图片列表
  1457. LVM_SETINFOTIP=4269//置信息提示
  1458. LVM_SETINSERTMARK=4262//置插入掩码
  1459. LVM_SETINSERTMARKCOLOR=4266//置插入掩码颜色
  1460. LVM_SETITEMA=4102//置项目
  1461. LVM_SETITEMCOUNT=4143//虚拟一个列表项目总数
  1462. LVM_SETITEMPOSITION=4111//置项目位置
  1463. LVM_SETITEMPOSITION32=4145//置项目位置32
  1464. LVM_SETITEMSTATE=4139//置项目状态
  1465. LVM_SETITEMTEXTA=4142//置项目正文
  1466. LVM_SETOUTLINECOLOR=4273//置列表框边框颜色
  1467. LVM_SETSELECTEDCOLUMN=4236//暂无说明
  1468. LVM_SETSELECTIONMARK=4163//置选择标志
  1469. LVM_SETTEXTBKCOLOR=4134//置正文背景色
  1470. LVM_SETTEXTCOLOR=4132//置文本颜色
  1471. LVM_SETTILEINFO=4260//暂无说明
  1472. LVM_SETTILEVIEWINFO=4258//暂无说明
  1473. LVM_SETTILEWIDTH=4237//暂无说明
  1474. LVM_SETTOOLTIPS=4170//置工具条
  1475. LVM_SETUNICODEFORMAT=8197//置UNICODE格式
  1476. LVM_SETVIEW=4238//置列表框类型。
  1477. LVM_SETWORKAREAS=4161//置工作区
  1478. LVM_SORTGROUPS=4254//群(块)分类
  1479. LVM_SORTITEMS=4144//项目分类
  1480. LVM_SORTITEMSEX=4177//项目分类扩展
  1481. LVM_SUBITEMHITTEST=4153//暂无说明
  1482. LVM_UPDATE=4138//刷新列表框
  1483. LVM_EDITLABELW=4214//宽字符方式编辑指定位置,易语言不能用
  1484. LVM_FINDITEMW=4179//宽字符方式寻找项目,易语言不能用
  1485. LVM_GETBKIMAGEW=4235//宽字符方式取背景图片,易语言不能用
  1486. LVM_GETCOLUMNW=4191//宽字符方式取一个列的属性,易语言不能用
  1487. LVM_GETISEARCHSTRINGW=4213//暂无说明
  1488. LVM_GETITEMTEXTW=4211//宽字符方式取项目正文,易语言不能用
  1489. LVM_GETITEMW=4171//宽字符方式取项目,易语言不能用
  1490. LVM_GETSTRINGWIDTHW=4183//宽字符方式取显示一个文本所需要的列宽度,易语言不能用
  1491. LVM_INSERTCOLUMNW=4193//宽字符方式插入列,易语言不能用
  1492. LVM_INSERTITEMW=4173//宽字符方式插入项目,易语言不能用
  1493. LVM_SETBKIMAGEW=4234//宽字符方式设置背景图片,易语言不能用
  1494. LVM_SETCOLUMNW=4192//宽字符方式设置设置列,易语言不能用
  1495. LVM_SETITEMW=4172//宽字符方式置项目,易语言不能用
  1496. LVM_SETITEMTEXTW=4212//宽字符方式置项目正文,易语言不能用
  1497. LVIF_COLUMNS=512//暂无说明
  1498. LVIF_DI_SETITEM=4096//暂无说明
  1499. LVIF_GROUPID=256//暂无说明
  1500. LVIF_IMAGE=2//暂无说明
  1501. LVIF_INDENT=16//暂无说明
  1502. LVIF_NORECOMPUTE=2048//暂无说明
  1503. LVIF_PARAM=4//暂无说明
  1504. LVIF_STATE=8//暂无说明
  1505. LVIF_TEXT=1//暂无说明
  1506. LVIS_ACTIVATING=32//现在不支持了
  1507. LVIS_CUT=4//做了剪切标记
  1508. LVIS_DROPHILITED=8//是一个拖放对象
  1509. LVIS_FOCUSED=1//拥有焦点
  1510. LVIS_GLOW=16//暂无说明
  1511. LVIS_OVERLAYMASK=3840//使用这个掩码取图象索引
  1512. LVIS_SELECTED=2//项目被选择
  1513. LVIS_STATEIMAGEMASK=-4096//暂无说明
  1514. LVFI_NEARESTXY=64//暂无说明
  1515. LVFI_PARAM=1//使用查找项目数值
  1516. LVFI_PARTIAL=8//检查项目标题是否从被指向的位置开始,使用这个参数就自动使用了LVFI_STRING
  1517. LVFI_STRING=2//使用查找标题
  1518. LVFI_WRAP=32//如果没有发现,就从头开始
  1519. LVCF_FMT=1//FMT 为有效
  1520. LVCF_WIDTH=2//宽度有效
  1521. LVCF_TEXT=4//文字有效
  1522. LVCF_SUBITEM=8//子项有效
  1523. LVCF_IMAGE=16//图片有效
  1524. LVCFMT_LEFT=0//文字左对齐
  1525. LVCFMT_RIGHT=1//文字右对齐
  1526. LVCFMT_CENTER=2//文字中对齐
  1527. LVCFMT_JUSTIFYMASK=3//暂无说明
  1528. LVCFMT_IMAGE=2048//暂无说明
  1529. LVCFMT_BITMAP_ON_RIGHT=4096//暂无说明
  1530. LVCFMT_COL_HAS_IMAGES=-32768//暂无说明
  1531. HDM_FIRST=4608//暂无说明
  1532. HDM_CLEARFILTER=4632//清空过滤器
  1533. HDM_CREATEDRAGIMAGE=4624//暂无说明
  1534. HDM_DELETEITEM=4610//删除列项目
  1535. HDM_EDITFILTER=4631//编辑过滤器
  1536. HDM_GETBITMAPMARGIN=4629//取图标与旁边的空白距离
  1537. HDM_GETIMAGELIST=4617//取列图标列表
  1538. HDM_GETITEMA=4611//取列项目
  1539. HDM_GETITEMCOUNT=4608//取列项目数
  1540. HDM_GETITEMRECT=4615//取项目矩形范围
  1541. HDM_GETORDERARRAY=4625//取列的左右对齐方式
  1542. HDM_GETUNICODEFORMAT=8198//取列UNICODE格式
  1543. HDM_HITTEST=4614//暂无说明
  1544. HDM_INSERTITEMA=4609//插入列项目
  1545. HDM_LAYOUT=4613//暂无说明
  1546. HDM_ORDERTOINDEX=4623//暂无说明
  1547. HDM_SETBITMAPMARGIN=4628//暂无说明
  1548. HDM_SETFILTERCHANGETIMEOUT=4630//暂无说明
  1549. HDM_SETHOTDIVIDER=4627//暂无说明
  1550. HDM_SETIMAGELIST=4616//暂无说明
  1551. HDM_SETITEMA=4612//置列项目
  1552. HDM_SETORDERARRAY=4626//暂无说明
  1553. HDM_SETUNICODEFORMAT=8197//置列UNICODE格式
  1554. HDM_GETITEMW=4619//暂无说明
  1555. HDM_INSERTITEMW=4618//暂无说明
  1556. HDM_SETITEMW=4620//暂无说明
  1557. LV_VIEW_ICON=0//大图标列表
  1558. LV_VIEW_DETAILS=1//报表列表框
  1559. LV_VIEW_SMALLICON=2//小图标列表
  1560. LV_VIEW_LIST=3//普通列表框
  1561. LV_VIEW_MAX=4//暂无说明
  1562. LVBKIF_FLAG_TILEOFFSET=256//指定起始坐标,只用先指定了LVBKIF_STYLE_TILE样式,才能有效
  1563. LVBKIF_SOURCE_HBITMAP=1//使用图片的句柄
  1564. LVBKIF_SOURCE_MASK=3//暂无说明
  1565. LVBKIF_SOURCE_NONE=0//不使用背景图片
  1566. LVBKIF_SOURCE_URL=2//使用URL路径的图片
  1567. LVBKIF_STYLE_NORMAL=0//正常显示背景图片
  1568. LVBKIF_STYLE_TILE=16//正常平铺显示背景图片
  1569. LVS_ALIGNMASK=3072//暂无说明
  1570. LVS_ALIGNLEFT=2048//左对齐
  1571. LVS_ALIGNTOP=0//顶端对齐
  1572. LVS_TYPEMASK=3//暂无说明
  1573. LVS_ICON=0//大图标
  1574. LVS_REPORT=1//详细资料
  1575. LVS_SMALLICON=2//小图标
  1576. LVS_LIST=3//列表
  1577. LVS_TYPESTYLEMASK=-1024//暂无说明
  1578. LVS_SINGLESEL=4//只能单选
  1579. LVS_SHOWSELALWAYS=8//始终显示所选中项(包括失去焦点时)
  1580. LVS_SORTASCENDING=16//按升序排序
  1581. LVS_SORTDESCENDING=32//按降序排序
  1582. LVS_SHAREIMAGELISTS=64//共享图像列表(当控件销毁时图像列表仍可用)
  1583. LVS_NOLABELWRAP=128//文字不换行
  1584. LVS_AUTOARRANGE=256//自动排列
  1585. LVS_EDITLABELS=512//允许编辑标签(类似资源管理器的文件更名)
  1586. LVS_OWNERDRAWFIXED=1024//允许自画(仅详细资料模式)
  1587. LVS_OWNERDATA=4096//指定一个虚拟的ListView,由用户自己管理Item数据
  1588. LVS_NOSCROLL=8192//禁止滚动条(对LVS_LIST和LVS_REPORT样式不适用)
  1589. LVS_NOCOLUMNHEADER=16384//详细资料模式时不显示列头
  1590. LVS_NOSORTHEADER=32768//列头显示为平面,不响应鼠标点击(详细资料模式)
  1591. LVS_EX_BORDERSELECT=32768//用选择边框的样式代替高亮
  1592. LVS_EX_CHECKBOXES=4//在各项目前面显示复选框
  1593. LVS_EX_DOUBLEBUFFER=65536//双缓冲(WinXP以上)
  1594. LVS_EX_FLATSB=256//平面滚动条
  1595. LVS_EX_FULLROWSELECT=32//允许选择整行(仅详细资料模式)
  1596. LVS_EX_GRIDLINES=1//显示表格线(仅详细资料模式)
  1597. LVS_EX_HEADERDRAGDROP=16//允许通过拖放列头来重新安排各列(详细资料模式)
  1598. LVS_EX_HIDELABELS=131072//隐藏标签(WinXP以上)
  1599. LVS_EX_INFOTIP=1024//将提示信息窗口的消息通知父窗口
  1600. LVS_EX_LABELTIP=16384//如果没有提示信息文本就展开隐藏的标签
  1601. LVS_EX_MULTIWORKAREAS=8192//多个工作区(需在没有添加项目前设置)
  1602. LVS_EX_ONECLICKACTIVATE=64//单击项目激活
  1603. LVS_EX_REGIONAL=512//项目范围只包括图标不透明区域和文字区域(大图标模式)
  1604. LVS_EX_SINGLEROW=262144//显示单行(WinXP以上)
  1605. LVS_EX_SNAPTOGRID=0//[暂无消息值]图标自动对齐到表格(WinXP以上)
  1606. LVS_EX_SUBITEMIMAGES=2//允许子项目显示图像(仅详细资料模式)
  1607. LVS_EX_TRACKSELECT=8//允许热点选择
  1608. LVS_EX_TWOCLICKACTIVATE=128//双击项目激活
  1609. LVS_EX_UNDERLINECOLD=4096//非热点的项目文字带下划线
  1610. LVS_EX_UNDERLINEHOT=2048//带热点的项目文字带下划线
  1611. //设置IE cookie
  1612. INTERNET_COOKIE_THIRD_PARTY=#10
  1613. endnamespace


  1614. //一些自己扩展的字符串操作
  1615. namespace  StrEx
  1616. //取两个字符串中间的信息
  1617. //参数1:源字符串
  1618. //参数2:要取的部分所在开头的字符串
  1619. //参数3:结束部分字符,默认为空,表示到到结尾
  1620. function mid(source,startStr,endStr="")
  1621.     startpos
  1622.     endpos
  1623.     temp
  1624.     if(startpos=="")
  1625.         startpos=0
  1626.     else
  1627.         startpos=str.findstr(source,startStr)
  1628.         
  1629.     endif
  1630.     temp=str.strsub(source,startpos+str.strleng(startStr),str.strleng(source))
  1631.    
  1632.     if(endStr=="")
  1633.         endpos=str.strleng(temp)
  1634.     else
  1635.         endpos=str.findstr(temp,endStr)
  1636.     endif
  1637.    
  1638.     if(startpos==-1 || endpos==-1)
  1639.         return ""
  1640.     endif
  1641.     ret=str.strsub(temp,0,endpos)
  1642.     return ret
  1643. endfunction

  1644. function getReferer(url)
  1645.     pos=str.findstr(url,"http")
  1646.     if(pos==-1)
  1647.         return ""
  1648.     endif
  1649.    
  1650.     temp=str.strsub(url,str.findstr(url,"//")+2,str.strleng(url))
  1651.     ret=str.strsub(url,0,str.findstr(temp,"/")+str.findstr(url,"//")+2)
  1652.     return ret
  1653. endfunction
  1654. endnamespace
复制代码
游客,如果您要查看本帖隐藏内容请回复

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

发表于 2013-7-9 22:30:40 | 显示全部楼层
我的个天啊
回复 支持 反对

使用道具 举报

发表于 2013-7-9 22:32:48 | 显示全部楼层
好厉害。支持支持
回复 支持 反对

使用道具 举报

发表于 2013-7-9 23:59:42 | 显示全部楼层
收藏了
回复 支持 反对

使用道具 举报

发表于 2013-7-10 01:13:53 | 显示全部楼层
要火
回复 支持 反对

使用道具 举报

发表于 2013-7-10 01:16:39 | 显示全部楼层
强大顶一个,收藏了
回复 支持 反对

使用道具 举报

发表于 2013-7-10 06:56:26 | 显示全部楼层
TC利用xmlhttp的各种对象实现post功能
回复 支持 反对

使用道具 举报

发表于 2013-7-10 07:35:31 | 显示全部楼层
不错
回复 支持 反对

使用道具 举报

发表于 2013-7-10 07:43:28 | 显示全部楼层
看看是否需要,学习了
回复 支持 反对

使用道具 举报

发表于 2013-7-10 09:39:28 | 显示全部楼层
强大顶一个,收藏了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18045623号)

GMT+8, 2024-3-30 00:10 , Processed in 0.053947 second(s), 24 queries .

Powered by 海安简单软件服务部

© 2008-2019 版权所有 保留所有权利

快速回复 返回顶部 返回列表