Rebol 编程/set-net
外观
< Rebol 编程
SET-NET settings
网络设置。默认值之后的任何值都是可选的。单词可以用于服务器名称。
SET-NET 是一个函数值。
- settings -- [email-addr default-server pop-server proxy-server proxy-port-id proxy-type esmtp-user esmtp-pass] (类型:块)
set-net: func [ {Network setup. All values after default are optional. Words OK for server names.} settings [block!] {[email-addr default-server pop-server proxy-server proxy-port-id proxy-type esmtp-user esmtp-pass]} /local actions item ][ actions: [ [system/user/email: item] [system/schemes/default/host: item] [system/schemes/pop/host: item] [system/schemes/default/proxy/host: item] [system/schemes/default/proxy/port-id: item] [system/schemes/default/proxy/type: item] [system/schemes/esmtp/user: item] [system/schemes/esmtp/pass: item] ] forall settings [ if (item: first settings) = 'none [item: none] if word? item [item: form item] do first actions if tail? actions: next actions [break] ] if string? system/schemes/default/proxy/type [ system/schemes/default/proxy/type: to-word system/schemes/default/proxy/type ] if all [system/schemes/default/proxy/host none? system/schemes/default/proxy/type] [ system/schemes/default/proxy/type: 'socks ] if system/user/email [ system/schemes/ftp/pass: system/user/email ] all [ none? get in system/schemes/default/proxy 'user system/schemes/default/proxy/user: func [] [ system/schemes/default/proxy/user: ask "Enter proxy authentication username: " ] ] all [ none? get in system/schemes/default/proxy 'pass system/schemes/default/proxy/pass: func [] [ system/schemes/default/proxy/pass: ask/hide "Enter proxy authentication password: " ] ] if 'ask = pick head settings 7 [ system/schemes/esmtp/user: func [] [ system/schemes/esmtp/user: ask "Enter ESMTP authentication username: " ] system/schemes/esmtp/pass: func [] [ system/schemes/esmtp/pass: ask/hide "Enter ESMTP authentication password: " ] ] exit ]
使用 set-user,它是一个带有表单的窗口。它对人类更友好。