c******d 发帖数: 906 | 1 请教一下如果使用instrument toolbox
目的是使用matlab去登陆 本地邮件服务器
t=tcpip('localhost',110);
fopen(t);
fscanf(t) % 这里返回 +OK POP3
fprintf(t,'USER xxx') % 到这里就不行了,不能输入任何字符
fscanf(t)
% 返回 "A timeout occurred before the Terminator was reached. "
fprintf(t,'PASS xxx');
fscanf(t)
% 同样返回 "A timeout occurred before the Terminator was reached. "
fclose(t);
delete(t);
clear t; | j*a 发帖数: 14423 | 2 try
fprintf(t,'USER xxx\n')
fprintf(t,'USER xxx\n\r')
fprintf(t,'USER xxx\r\n')
etc
【在 c******d 的大作中提到】 : 请教一下如果使用instrument toolbox : 目的是使用matlab去登陆 本地邮件服务器 : t=tcpip('localhost',110); : fopen(t); : fscanf(t) % 这里返回 +OK POP3 : fprintf(t,'USER xxx') % 到这里就不行了,不能输入任何字符 : fscanf(t) : % 返回 "A timeout occurred before the Terminator was reached. " : fprintf(t,'PASS xxx'); : fscanf(t)
| c******d 发帖数: 906 | 3 试过,还是不行。。。
try
fprintf(t,'USER xxx\n')
fprintf(t,'USER xxx\n\r')
fprintf(t,'USER xxx\r\n')
etc
【在 j*a 的大作中提到】 : try : fprintf(t,'USER xxx\n') : fprintf(t,'USER xxx\n\r') : fprintf(t,'USER xxx\r\n') : etc
| j*a 发帖数: 14423 | 4 再加个fflush(t)
【在 c******d 的大作中提到】 : 试过,还是不行。。。 : : try : fprintf(t,'USER xxx\n') : fprintf(t,'USER xxx\n\r') : fprintf(t,'USER xxx\r\n') : etc
| c******d 发帖数: 906 | 5 自问自答一下
需要设置telnet的Terminator字符
'CR/LF' for both read and write
没有设置的时候,matlab默认是'LF' for both read/write
这样在telnet环境下,系统不知道什么时候算终止。。。
【在 c******d 的大作中提到】 : 请教一下如果使用instrument toolbox : 目的是使用matlab去登陆 本地邮件服务器 : t=tcpip('localhost',110); : fopen(t); : fscanf(t) % 这里返回 +OK POP3 : fprintf(t,'USER xxx') % 到这里就不行了,不能输入任何字符 : fscanf(t) : % 返回 "A timeout occurred before the Terminator was reached. " : fprintf(t,'PASS xxx'); : fscanf(t)
|
|