读书人

关于DELPHI7发送邮件的有关问题

发布时间: 2012-03-03 15:33:03 作者: rapoo

关于DELPHI7发送邮件的问题
**********
引用部分:
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, IdAntiFreezeBase, IdAntiFreeze, IdMessage,
IdTCPConnection, IdTCPClient, IdMessageClient, IdSMTP, IdBaseComponent,
IdComponent, IdUDPBase, IdUDPClient, IdDNSResolver, ComCtrls;
**********
其它省略
************


function TForm1.GetMxList(AMxList: TStringList; AQName: string):integer;
var
i: Integer;
begin

with IdDNSResolver do
begin
Host := '218.85.157.99';
ReceiveTimeout := 1000;
ClearVars;
with DNSHeader do
begin
Qr := False;
Opcode := 0;
RD := True;
QDCount := 1;
end;
DNSQDList.Clear;
with DNSQDList.Add do
begin
QName := AQName;
QType := cMX;
QClass := cIN;
end;
getmxlist:=0;
try
ResolveDNS;
except
getmxlist:=1;
end;
for i := 0 to DNSAnList.Count-1 do
AMxList.Add(DNSAnList[i].RData.MX.Exchange + '=' + IntToStr(DNSAnList[i].RData.MX.Preference));
end;

end;


出现错误如下:
[Error] Unit1.pas(112): Undeclared identifier: 'ClearVars'
[Error] Unit1.pas(113): Undeclared identifier: 'DNSHeader'
[Error] Unit1.pas(115): Undeclared identifier: 'Qr'
[Error] Unit1.pas(116): Undeclared identifier: 'Opcode'
[Error] Unit1.pas(117): Undeclared identifier: 'RD'
[Error] Unit1.pas(118): Undeclared identifier: 'QDCount'
[Error] Unit1.pas(120): Undeclared identifier: 'DNSQDList'
[Error] Unit1.pas(121): 'DO' expected but identifier 'Add' found
[Error] Unit1.pas(123): Undeclared identifier: 'QName'
[Error] Unit1.pas(124): Undeclared identifier: 'QType'
[Error] Unit1.pas(125): Undeclared identifier: 'QClass'
[Error] Unit1.pas(129): Undeclared identifier: 'ResolveDNS'
[Error] Unit1.pas(133): Undeclared identifier: 'DNSAnList'

为什么啊????是版本问题么????应该如何解决。。。



[解决办法]
没有定义啊

回复内容太短了!
[解决办法]
是人的代吧,你拿用。

很然 段代的indy版本 你目前的indy版本不相同
[解决办法]
没定义,就是没有uses它所在的unit
[解决办法]
这么短的全局变量名,感觉不像是indy这类控件包的,而是应用自己的unit里的

读书人网 >.NET

热点推荐