|
易语言命令名称: z7 Q$ C; B8 W; S- W9 x1 _
网页_访问_对象
" ~6 a& l% H, \. ~" a& J- Q7 A ~7 r5 A
命令功能介绍:$ ]8 T: J8 P+ L. z1 {0 v# W
. [4 R: u" l( N' q1 z, N4 S& }使用WinHttp的对象方式访问网页
" K7 e+ }. Z, e {( S/ f/ B命令类别:精易模块命令
& ~7 S* \7 }; n* K( l% s8 ^ g6 `& E# g
$ Z' C( ^8 M o# C) `命令使用说明:
6 E% f' U0 B' U子程序名:网页_访问_对象+ c1 P/ k6 a$ D
使用WinHttp的对象方式访问网页. G9 R- J$ \4 ~; f
返回值类型:字节集- X5 t. M9 f8 a L: |
参数<1>的名称为“网址”,类型为“文本型”。注明:完整的网页地址,必须包含http://或者https://。
+ `7 X. Q# N# B 参数<2>的名称为“访问方式”,类型为“整数型”,允许接收空参数数据。注明:0=GET 1=POST 2=HEAD 3=PUT 4=OPTIONS 5=DELETE 6=TRACE 7=CONNECT。
7 ?* ?, x4 Z7 C: h* u 参数<3>的名称为“提交信息”,类型为“文本型”,允许接收空参数数据。注明:"POST"专用 自动UTF8编码。
' n/ A0 O( }. z! ~3 [, b1 w3 L 参数<4>的名称为“提交Cookies”,类型为“文本型”,接收参数数据时采用参考传递方式,允许接收空参数数据。注明:设置提交时的cookie。
' e' c+ \# `3 c: M# H& p8 D 参数<5>的名称为“返回Cookies”,类型为“文本型”,接收参数数据时采用参考传递方式,允许接收空参数数据。注明:返回的Cookie。
& N3 Z9 b5 c: ]# ~" G3 o 参数<6>的名称为“附加协议头”,类型为“文本型”,允许接收空参数数据。注明:一行一个请用换行符隔开。# b& k) p% U8 C8 n' `1 n/ X, m' Y
参数<7>的名称为“返回协议头”,类型为“文本型”,接收参数数据时采用参考传递方式,允许接收空参数数据。注明:返回的协议头。
4 h6 b& x9 X5 O* T7 \ 参数<8>的名称为“返回状态代码”,类型为“整数型”,接收参数数据时采用参考传递方式,允许接收空参数数据。注明:网页返回的状态代码,例如:200;302;404等。
, p5 e0 Q6 }6 P! m- v4 @1 V 参数<9>的名称为“禁止重定向”,类型为“逻辑型”,允许接收空参数数据。注明:默认不禁止网页重定向。
$ a! b) K! N7 z, D9 N1 E& H 参数<10>的名称为“字节集提交”,类型为“字节集”,允许接收空参数数据。注明:提交字节集数据。
: u& u. _" [" Q$ B: P2 I# j 参数<11>的名称为“代理地址”,类型为“文本型”,允许接收空参数数据。注明:代理地址,格式为 8.8.8.8:88。; Y* I( F* y8 w% P7 c
参数<12>的名称为“超时”,类型为“整数型”,允许接收空参数数据。注明:秒|默认为15秒,-1为无限等待。
- _) l( g1 v- K* z$ D1 m8 Z 参数<13>的名称为“代理用户名”,类型为“文本型”,允许接收空参数数据。注明:用户名。
7 Y5 H* t: t$ a0 M) F9 ?5 r8 k" | 参数<14>的名称为“代理密码”,类型为“文本型”,允许接收空参数数据。注明:密码。
1 k( ?9 Z1 B7 Y9 F) g, p 参数<15>的名称为“代理标识”,类型为“整数型”,允许接收空参数数据。注明:代理标识,默认为1,0为路由器。 j" o; N' V; S9 U
参数<16>的名称为“对象继承”,类型为“对象”,允许接收空参数数据。注明:此处可自行提供对象,不再主动创建。1 p% u# C) b% k/ P1 X0 d0 f
参数<17>的名称为“是否自动合并更新Cookie”,类型为“逻辑型”,允许接收空参数数据。注明:默认为真,自动合并更新。4 b% U. p/ l' [* ^6 S+ i: v
参数<18>的名称为“是否补全必要协议头”,类型为“逻辑型”,允许接收空参数数据。注明:当附件协议头为空时自动添加必要的UA协议头 默认为真,假将不再添加非传入协议头。) m# p$ K* |5 A9 N
参数<19>的名称为“是否处理协议头大小写”,类型为“逻辑型”,允许接收空参数数据。注明:将协议头中的键名首字母处理为大写 默认为真。
, u# X9 k! e. |6 y8 |( T5 L5 S6 Y7 y* H
4 ]* K3 O' m3 O* q6 E. J, Q
1 Z( b3 ]9 `' E- q1 d/ T8 s
2 H2 |. f2 [% |
- @- W0 z. z: ] M5 h( i6 C
/ q1 y& M4 C' L! Z
命令源码:9 M' A0 m* f" a6 V8 O% n6 v
8 x2 M5 O% t! f- .版本 26 j+ B: h: l: q2 T
* m# @3 U4 L9 W" e }- .子程序 网页_访问_对象, 字节集, 公开, 使用WinHttp的对象方式访问网页* r6 ~$ }4 }0 n, {
- .参数 网址, 文本型, , 完整的网页地址,必须包含http://或者https://2 w( k: f- j5 q. T
- .参数 访问方式, 整数型, 可空, 0=GET 1=POST 2=HEAD 3=PUT 4=OPTIONS 5=DELETE 6=TRACE 7=CONNECT6 L* {) p3 w" K2 N
- .参数 提交信息, 文本型, 可空, "POST"专用 自动UTF8编码9 v4 s/ F7 L- V7 G
- .参数 提交Cookies, 文本型, 参考 可空, 设置提交时的cookie
& P" X- }; v2 l ]3 I4 m - .参数 返回Cookies, 文本型, 参考 可空, 返回的Cookie
7 X, e' e! U* G$ J% S' B B - .参数 附加协议头, 文本型, 可空, 一行一个请用换行符隔开
: L7 z- s3 b3 F! L# k$ l1 m - .参数 返回协议头, 文本型, 参考 可空, 返回的协议头
5 L# _& g+ P2 @, j4 ]0 U: L - .参数 返回状态代码, 整数型, 参考 可空, 网页返回的状态代码,例如:200;302;404等
2 u# i- J2 W) U% ?7 B' ^3 s) ` I - .参数 禁止重定向, 逻辑型, 可空, 默认不禁止网页重定向4 e2 j/ y2 h6 K& m, }
- .参数 字节集提交, 字节集, 可空, 提交字节集数据' }' F, ]7 ~& A! J8 Y8 i' h, l
- .参数 代理地址, 文本型, 可空, 代理地址,格式为 8.8.8.8:88
/ k8 a# R& X% \ - .参数 超时, 整数型, 可空, 秒|默认为15秒,-1为无限等待; X8 v" M- [8 [: x- `. H: W$ h3 R
- .参数 代理用户名, 文本型, 可空, 用户名
8 P1 V/ w; f( ?$ E& y; _' d; R# Q - .参数 代理密码, 文本型, 可空, 密码
8 ]6 d! l) i& x - .参数 代理标识, 整数型, 可空, 代理标识,默认为1,0为路由器8 Y: U0 \5 q, a% {
- .参数 对象继承, 对象, 可空, 此处可自行提供对象,不再主动创建* O8 X3 s9 X. _( @2 n; X
- .参数 是否自动合并更新Cookie, 逻辑型, 可空, 默认为真,自动合并更新3 J/ L9 i8 k; |* ~5 t: w; |
- .参数 是否补全必要协议头, 逻辑型, 可空, 当附件协议头为空时自动添加必要的UA协议头 默认为真,假将不再添加非传入协议头: k y& ]' c0 g
- .参数 是否处理协议头大小写, 逻辑型, 可空, 将协议头中的键名首字母处理为大写 默认为真% u/ h# J/ ^ x; w" N
- .局部变量 局_访问方式, 文本型
, Q$ y0 _" p- E B7 i( z# { - .局部变量 局_WinHttp, 对象
7 K6 k7 i& }: W# l0 H - .局部变量 局_发送协议头, 文本型, , "0"
- E6 u7 U5 _* ^ - .局部变量 局_返回协议头, 文本型, , "0"" q" n( T$ L' ~$ k7 {
- .局部变量 局_计次, 整数型
# Q2 @$ u7 _% N6 ^5 Q! T, M - .局部变量 局_网页数据, 字节集1 Y- I f5 Q H, a1 n$ A
- .局部变量 局_变体提交, 变体型
! {# I$ e' `9 |9 C/ }- ~( g% q! K% _
. C' p. n5 i. G- \( G' S* r- .如果真 (是否为空 (是否自动合并更新Cookie))# J3 ~. O9 F% z# @7 P5 h6 t0 _
- 是否自动合并更新Cookie = 真' {5 [. p- k. n& e* |
- .如果真结束+ h' Q4 p' U. P1 G* }$ g
- 6 u8 i- B! L2 z& F- {' c6 h
- .如果真 (是否为空 (是否补全必要协议头)): r( x' s9 ^) C* B3 J r# g! ^
- 是否补全必要协议头 = 真
( f$ }% M$ r+ O L' J8 @ - .如果真结束
" x# M# J: ]' A+ y
# t0 C, t4 V( _; u. ^* b f0 F0 P8 k( d- .如果真 (是否为空 (是否处理协议头大小写))
, l! N& E" _( _% Q# L - 是否处理协议头大小写 = 真
, D; e7 M7 S. I3 l/ b6 l) R) O - .如果真结束% N# y& T/ \! `3 W; ]; H8 ?
- & F. p8 c+ ^1 n/ S
- 线程_初始化COM库 ()) l8 ~0 f: Q8 ~3 t: \/ ~
- , G! g5 _1 \' L4 {
- .如果真 (访问方式 < 0 或 访问方式 > 7)3 B5 c+ v9 p4 P+ U9 D6 v8 b
- 访问方式 = 0& [, x B* i; o+ ^
- .如果真结束, |$ {; x5 A4 H$ ` Y; Y* V
- 局_访问方式 = 多项选择 (访问方式 + 1, “GET”, “POST”, “HEAD”, “PUT”, “OPTIONS”, “DELETE”, “TRACE”, “CONNECT”)
) ^8 D4 U$ k9 ~, X - 1 b# R; @ Z; a5 w
- .判断开始 (是否为空 (对象继承)). G# h8 [1 L& s- I4 Y
- .如果真 (局_WinHttp.创建 (“WinHttp.WinHttpRequest.5.1”, ) = 假)! q5 x c2 @4 W
- 返回 ({ })
9 U! g. s+ u( \4 P \( U$ s - .如果真结束1 G5 i3 Q- A [5 t3 ^# ]$ p
- + d$ u. N! c6 v) \& D& g0 h
- .默认
/ y: O$ b0 c9 b& ? u - 局_WinHttp = 对象继承4 B2 R4 a5 h* B! y# i
- .判断结束+ c1 j; ?* ]+ a/ ?7 N* h
! E( U' d L- F; X" `. Z. M8 |- .如果真 (超时 ≠ -1)6 H( E% N: E0 `3 f1 s/ _
- .如果 (超时 < 1)1 s6 k% Y5 L; d; C/ g5 g/ T" \! M
- 超时 = 15000$ p( U0 l7 D! ?. K/ k9 o; b
- .否则
& @' t9 V3 y9 T! b, H - 超时 = 超时 × 1000
& g5 y* u: S6 H; d6 g! @ - .如果结束! ], @) D7 m& W- X! X, q9 Q" C4 @
- 局_WinHttp.方法 (“SetTimeouts”, 超时, 超时, 超时, 超时)" F$ O# ? o& ~0 R
- .如果真结束0 @" V) _, B; @- q) [! q; ~0 M
: X3 _. G5 Q8 x8 s7 n- .如果真 (代理地址 ≠ “”)
8 y/ @& z( r0 {/ ]8 P6 R9 I - 局_WinHttp.方法 (“SetProxy”, 2, 代理地址)
2 X8 t# x0 S9 S: i4 ?2 X - .如果真结束+ ]/ z/ t5 {7 S
- 局_WinHttp.方法 (“Open”, 局_访问方式, 网址, 假)
) E1 f2 w& [2 e7 D* e+ a - .如果真 (禁止重定向)* |& H y# Y8 O# i$ a* Q8 c @
- 局_WinHttp.写属性 (“Option”, 6, 0)- K# c/ _7 q/ B2 O$ F8 t! R( T
- .如果真结束3 c8 g. e1 s% N* U
- 8 D. Q% D4 e" t2 o7 y# m0 \
- 局_WinHttp.写属性 (“Option”, 4, 13056) ' 忽略错误标志
& z* q& U7 d* q+ a, V6 J) n - ( s+ z5 {. i3 V, S) Z& ?7 t
- 3 o' U* P9 r x8 G* Y K2 p3 H. [
- .如果真 (是否补全必要协议头)
8 g% s8 w9 j" {4 J6 T - .如果真 (寻找文本 (附加协议头, “Accept:”, , 真) = -1)
2 \6 a, q. y# Z( s8 x' Q - 附加协议头 = 附加协议头 + #换行符 + “Accept: */*”- z- R' Z; D5 Z5 r
- .如果真结束, z, D- f+ I* G( c# P: V
; Z" B) @" L( j$ h7 i- .如果真 (寻找文本 (附加协议头, “Referer:”, , 真) = -1)1 a# P6 y- n- M3 x. K6 m$ q
- 附加协议头 = 附加协议头 + #换行符 + “Referer: ” + 网址/ N9 I W/ }# G$ e8 K J7 e# [8 k
- .如果真结束
% c( {9 D! d( J9 l* J i" d( \
e3 M; R9 p) k% a' A" ?1 p2 I1 \- .如果真 (寻找文本 (附加协议头, “Accept-Language:”, , 真) = -1)
- L7 C$ T5 j/ v2 @" S' [2 n - 附加协议头 = 附加协议头 + #换行符 + “Accept-Language: zh-cn”5 c7 h3 P- i% o5 `4 V/ n: `9 E
- .如果真结束
, u2 I0 b6 X$ g+ C K
; I Q( Z4 B- M1 h% l- .如果真 (寻找文本 (附加协议头, “User-Agent:”, , 真) = -1)
* @# a4 ? a2 l- C) l$ `4 J$ D - 附加协议头 = 附加协议头 + #换行符 + “User-Agent: Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 6.1)”
. F* d# ^2 `3 B, z/ {4 m - .如果真结束' e+ `( j2 U2 x, ?+ O3 d8 F1 F8 {
- 9 F1 |1 g8 b$ q- @
- .如果真 (访问方式 = 1)
) Y% K; k! F% P2 d4 F' o - .如果真 (寻找文本 (附加协议头, “Content-Type:”, , 真) = -1)$ d. t- d6 I3 z, R5 ~$ i
- 附加协议头 = 附加协议头 + #换行符 + “Content-Type: application/x-www-form-urlencoded”4 c/ a" r6 V& w( A! A
- .如果真结束
; D: d5 }1 ~/ s+ `! D. O; {; E' ?
t8 H# Q- F2 o# y% w9 y. H- .如果真结束
/ W! M+ U0 D! B7 G" X8 u
6 R6 a1 w* [ V' j: A9 X- .如果真结束
; K3 s/ L9 ^9 l; S, q3 {* N
/ i2 V: ?# x+ t4 `2 |- .如果真 (是否处理协议头大小写)
7 A d) C2 K9 U5 c f( a0 h/ X - 附加协议头 = 网页_处理协议头 (附加协议头)
0 ^* f# S0 G5 l$ g; h8 g - .如果真结束 o& @7 V( z+ A1 E1 n* B4 f' Y
- # k2 N7 f; T$ h! C6 X2 Q W
- .如果真 (代理地址 ≠ “” 且 代理用户名 ≠ “”)
' K' l m8 H* w; z( v1 H4 | - .如果真 (是否为空 (代理标识))
9 B& ?! `4 Z/ t" K8 ` - 代理标识 = 17 q/ F: M' C# u) @7 _, p! O& `
- .如果真结束
' H0 G) Y% |& a, y) r. n3 H - ' 局_WinHttp.方法 (“SetProxyCredentials”, 代理用户名, 代理密码, 代理标识)! ~" i+ Z& b( y) \
- .如果真 (代理标识 = 1)% a- _+ _* x+ X! J' r) M
- 局_WinHttp.方法 (“SetRequestHeader”, “Proxy-Authorization”, “Basic ” + 编码_BASE64编码 (到字节集 (代理用户名 + “:” + 代理密码)))
; U1 e7 `) Q% {; M1 G - .如果真结束
) ]" `: C; R3 P8 _7 z7 q - . g) Y& ~+ @3 @ @3 }1 @
- .如果真结束4 n4 i& i9 E4 F2 L* M3 |
- # r3 ?+ K: \9 k* Q- c
- .如果真 (取反 (是否为空 (提交Cookies)))
% H# J$ J7 l) X1 L - .如果真 (取文本长度 (提交Cookies) > 0)
' T. x2 w9 ^" `3 I - .如果真 (寻找文本 (提交Cookies, “Cookie:”, , 真) ≠ -1)7 y$ ^' R' J# k& o6 y' H; Z: O' y
- 提交Cookies = 子文本替换 (提交Cookies, “Cookie:”, “”, , , 假)4 C8 b6 ]6 U7 `# F9 s6 d
- .如果真结束
, z8 p* Z* H# f0 H; e3 Y
1 B2 v" K( p* W% y5 Y0 `- .如果真结束3 I* e1 @/ b" a. ?) A4 d8 m: a
- 局_WinHttp.方法 (“SetRequestHeader”, “Cookie”, 提交Cookies)
" H# O3 ^1 [# e8 h& [; K: q - .如果真结束* F* {: R8 z- O' @* z. |2 |
( b/ p, Q: R2 F4 H9 D7 Z- ) p; ^4 Q6 o8 T" u
- .判断开始 (寻找文本 (附加协议头, #换行符, , 假) = -1)
! \) s# }' z0 f4 M - 局_WinHttp.方法 (“SetRequestHeader”, 内部_协议头取名 (附加协议头), 内部_协议头取值 (附加协议头))+ q; F6 G+ p4 a# K: N/ \
- .默认
0 T5 R3 w( V7 C3 o - 局_发送协议头 = 分割文本 (附加协议头, #换行符, )
5 K' p* V# @' F2 T) U7 D - .计次循环首 (取数组成员数 (局_发送协议头), 局_计次)
7 F2 \5 O* _& h" s3 ?9 j - .如果真 (局_发送协议头 [局_计次] ≠ “”)
/ ]' x; ~4 s3 y/ J' ^/ T! k - .如果真 (内部_协议头取名 (局_发送协议头 [局_计次]) = “Connection”)
! D# h/ ~* ^2 S/ }$ E% A7 i+ u - .如果真 (内部_协议头取值 (局_发送协议头 [局_计次]) = “keep-alive”)
3 P: _: ^# ?8 F" e - 到循环尾 () ' 筛选排除此参数 避免协议头有此参数 HTTP对象又自动添加此参数
$ V3 Q0 T- L* w% y$ E4 k4 |( c" V - .如果真结束
0 k" r: z' S- @* W3 s$ u4 V - 8 \( ]" ~" P! z8 L8 {. j. N+ B
- .如果真结束
0 P; x a2 x) O7 z. F0 ~0 s. _ - ! z/ Y1 x, ^1 H6 |: P
- 局_WinHttp.方法 (“SetRequestHeader”, 内部_协议头取名 (局_发送协议头 [局_计次]), 内部_协议头取值 (局_发送协议头 [局_计次]))
- w- O. M3 S( b6 N1 @7 B. M, S - .如果真结束9 {- l- j/ X, U: B( a
9 n! s) G' y' {8 a1 |. ^/ e# p- .计次循环尾 ()
# w6 r' Z# @/ N( b( I - .判断结束! F/ \# ^0 e D8 S6 l2 K
. x1 |6 c4 G5 u% n% t& w1 g/ ~ |8 c- .判断开始 (字节集提交 = { })
. O" ^1 S; C3 z$ ^5 D% l0 t - 局_WinHttp.方法 (“Send”, 提交信息)
- d2 v" N. l" y, q - .默认2 E: T, g" H) k0 {- h* }( a
- 局_变体提交.赋值 (字节集提交, )& ^# z8 j' M$ m" C
- 局_WinHttp.方法 (“Send”, 局_变体提交)
6 q+ w/ e9 ?) ?# F& D1 w1 C - .判断结束9 }" H a. x6 h. B4 r
- 局_网页数据 = 局_WinHttp.读属性 (“ResponseBody”, ).取字节集 ()% ^; ~( G% v/ u' t8 ^4 S& R
- 返回协议头 = 局_WinHttp.读文本属性 (“GetAllResponseHeaders”, )
+ _7 k9 P; R7 s. x, i8 E - 返回状态代码 = 局_WinHttp.读数值属性 (“Status”, )
( @ Z3 b* e! a2 S9 I; ~0 v - 局_WinHttp.读文本属性 (“StatusText”, )3 F8 l9 n% V9 @, B2 ^* V
- 局_返回协议头 = 分割文本 (返回协议头, #换行符, )( M- M5 |; S& |$ g u ?" z
- 返回Cookies = “”
: Y8 G. p+ b6 Y* |$ o% @ - .计次循环首 (取数组成员数 (局_返回协议头), 局_计次)9 `- I( X& b: r& n( ?) l) b
- .如果真 (文本_取左边 (局_返回协议头 [局_计次], “: ”) = “Set-Cookie”)
9 Q- d5 H) D ]0 Q - .判断开始 (寻找文本 (局_返回协议头 [局_计次], “;”, , 假) ≠ -1)
; Q+ d# q, {( _1 h - 返回Cookies = 返回Cookies + 删首尾空 (文本_取出中间文本 (局_返回协议头 [局_计次], “Set-Cookie:”, “;”)) + “; ”* {9 ]2 k* ^) l4 @2 x
- .默认
% r9 Q# h& P, P# } - 返回Cookies = 返回Cookies + 删首尾空 (子文本替换 (局_返回协议头 [局_计次], “Set-Cookie:”, , , , 假)) + “; ”
Y( T1 @, Z |' R) |; f# A3 p - .判断结束
3 |9 i5 r9 @) _" t! ?9 O - / L" x# V8 ^+ C
- .如果真结束6 ~+ Z) p8 W- T9 O5 N
3 x( s4 A( n' v. j- .计次循环尾 ()
. t4 ]5 s0 \9 O: Z! g - .如果真 (取文本左边 (返回Cookies, 2) = “; ”)
8 w( \' ^$ N8 H' ~3 Y; @+ _" @5 [9 c - 返回Cookies = 取文本左边 (返回Cookies, 取文本长度 (返回Cookies) - 2)$ H2 t8 Y* n3 c& o) l6 v% N' `
- .如果真结束
4 t, { l8 `: m- I6 Y - ) q+ A" q& w! g- q; `5 G3 u! c
# q: F3 B! R" o- .如果真 (是否自动合并更新Cookie), L5 o* }6 T: q4 N5 E7 X
- .如果真 (取反 (是否为空 (提交Cookies)))% T' f0 k- D6 Y4 ?3 t
- 返回Cookies = 网页_Cookie合并更新 (提交Cookies, 返回Cookies)/ G7 c5 w/ M. C, U8 z4 U
- .如果真结束
3 C, @' X; h4 t: N - 3 I2 I2 s! e# s; E, ?$ ]
- .如果真结束
( g% w) `( k* Q - 局_WinHttp.清除 ()4 H8 o( u" m4 ~6 `: Q
- 线程_取消COM库 ()' I6 p6 }0 E* y# U8 X
- 返回 (局_网页数据)
* f: a( f+ t6 {% J - ! w2 i, `7 [* Y. |# ~
- .子程序 内部_协议头取名, 文本型
7 H! o$ ]: W7 q1 N4 F7 h" | - .参数 协议头, 文本型
6 z6 k3 C$ W* j' q - .局部变量 位置, 整数型
3 @2 P) @! D/ H- f3 I - .局部变量 结果, 文本型
2 y7 n# A# `9 P9 x( O- F3 `" y - ' z1 }& A' u- x3 j: i
- 位置 = 寻找文本 (协议头, “:”, , 假)
& m8 L$ f$ }$ T) u - .如果真 (位置 ≠ -1)
3 R' E- M: l# w - 结果 = 取文本左边 (协议头, 位置 - 1)5 u2 v- J, R/ s4 s+ D
- .如果真结束
! n' Y& Q( V8 }! u' ~. V - 返回 (删首尾空 (结果))% u5 ~! T( S3 U4 y1 c; d
- : D( L9 Y. X$ I) N8 _( r; ~
- .子程序 内部_协议头取值, 文本型
d* o! Y6 T7 p4 w1 E5 m3 X9 p - .参数 协议头, 文本型
8 F5 {3 t$ o- z5 }/ E- f- T2 ` - .局部变量 位置, 整数型1 j4 j! H, \7 \* `5 w% [
- .局部变量 结果, 文本型( v. x0 i( \: X( @0 s
- + q1 Y2 h+ U! m, ]$ K7 A5 P
- 位置 = 寻找文本 (协议头, “:”, , 假)
2 y0 s$ r7 Z, O7 L: r+ M% }! s - .如果真 (位置 ≠ -1)
, ]+ j1 z) m2 Y! [9 g1 g' m. Z8 Y - 结果 = 取文本右边 (协议头, 取文本长度 (协议头) - 位置)
& v3 S5 J/ R' t2 l - .如果真结束. N% j C6 t& v+ {
- 返回 (删首尾空 (结果))
复制代码 ) z3 L# x! k& v* w6 c% M
. `" U7 ?9 t8 S a$ X# W' O
源码复制到易语言教程:( M- p; f( _$ ^* Y( J' H5 @
0 g& \' V0 q" K- A5 c4 C4 u首先复制上面的命令源码.到剪辑板.然后来到易语言的程序集界面如下图所示
7 {' t- m( P) a$ l) Y( l( n
; q& L9 i, v5 |1 h' Y8 _: X7 w- z, y4 ^* `! t5 D) L( j8 ^5 a- b+ b
然后拖动鼠标把程序集名-窗口程序集.选中.然后粘贴上面的代码3 p$ o0 {0 l. G p
% j' \$ z% z8 p* b
即可插入易语言命令代码哦8 o$ @- n# o4 A% ` `: r/ n
- x1 y7 L N* n
DLL源码复制到易语言教程:
$ @4 s+ Q9 J* a$ S2 L2 k( ?5 A( t4 H4 P2 V( a
9 z+ R! H2 N0 q- G/ R$ R0 S. K1 C+ z* k1 p: e4 a9 o: r8 b
8 b, ~6 Y9 G8 A7 L, @2 V: _ |
|