dll的入口函数为:
procedure FununDownInfo(MainApp:TApplication;AppADOConnection:TADOConnection;GlobalData
GlobalDLLData;LibHandle:Integer);
begin
if not Assigned(MdiDLLApp) then
begin
MdiDLLApp:=Application;
if ADOConn <> AppADOConnection then
begin
//连接传递过来
ADOConn := AppADOConnection;
end;
//全局变量
ChildGlobalData:= GlobalData;
//应用传递过来
Application:=MainApp;
end;
//dll的地址传递过来
MyLibHandle:=LibHandle;
ShowChild;//显示窗体
end;
错误处理程序:
procedure TConOptionForm.ClientSocketError(Sender: TObject;
Socket: TCustomWinSocket; ErrorEvent: TErrorEvent;
var ErrorCode: Integer);
begin
case ErrorCode of
10004:begin
MessageBox(Handle,'操作被终止!','系统提示',MB_OK+MB_ICONERROR);
end;
10013:begin
MessageBox(Handle,'访问被拒绝!','系统提示',MB_OK+MB_ICONERROR);
end;
10014:begin
MessageBox(Handle,'地址错误!','系统提示',MB_OK+MB_ICONERROR);
end;
10022:begin
MessageBox(Handle,'参数错误!','系统提示',MB_OK+MB_ICONERROR);
end;
10024:begin
MessageBox(Handle,'打开太多的Socket!','系统提示',MB_OK+MB_ICONERROR);
end;
10035:begin
MessageBox(Handle,'没有可以获取的资料!','系统提示',MB_OK+MB_ICONERROR);
end;
10036:begin
MessageBox(Handle,'操作正在执行中!','系统提示',MB_OK+MB_ICONERROR);
end;
10038:begin
MessageBox(Handle,'在一个非法的 Socket 对象上执行操作!','系统提示',MB_OK+MB_ICONERROR);
end;
10039:begin
MessageBox(Handle,'目标地址缺失!','系统提示',MB_OK+MB_ICONERROR);
end;
10040:begin
MessageBox(Handle,'数据太长!','系统提示',MB_OK+MB_ICONERROR);
end;
10041:begin
MessageBox(Handle,'协议类型错误!','系统提示',MB_OK+MB_ICONERROR);
end;
10042:begin
MessageBox(Handle,'错误的协议选项!','系统提示',MB_OK+MB_ICONERROR);
end;
10043:begin
MessageBox(Handle,'协议不支持!','系统提示',MB_OK+MB_ICONERROR);
end;
10044:begin
MessageBox(Handle,'Socket 类型不支持!','系统提示',MB_OK+MB_ICONERROR);
end;
10045:begin
MessageBox(Handle,'不支持指定操作!','系统提示',MB_OK+MB_ICONERROR);
end;
10046:begin
MessageBox(Handle,'协议族不支持!','系统提示',MB_OK+MB_ICONERROR);
end;
10047:begin
MessageBox(Handle,'所使用的地址族不在支持之列!','系统提示',MB_OK+MB_ICONERROR);
end;
10048:begin
MessageBox(Handle,'地址已经被使用!','系统提示',MB_OK+MB_ICONERROR);
end;
10049:begin
MessageBox(Handle,'设置地址失败!','系统提示',MB_OK+MB_ICONERROR);
end;
10050:begin
MessageBox(Handle,'网络关闭!','系统提示',MB_OK+MB_ICONERROR);
end;
10051:begin
MessageBox(Handle,'网络不可达!','系统提示',MB_OK+MB_ICONERROR);
end;
10052:begin
MessageBox(Handle,'网络被重置!','系统提示',MB_OK+MB_ICONERROR);
end;
10053:begin
MessageBox(Handle,'服务器已关闭,请稍后再拨.......','系统提示',MB_OK+MB_ICONERROR);
MessageBox(Handle,'软件导致连接退出!','系统提示',MB_OK+MB_ICONERROR);
end;
10054:begin
MessageBox(Handle,'服务器已关闭,请稍后再拨.......','系统提示',MB_OK+MB_ICONERROR);
MessageBox(Handle,'连接被重置!','系统提示',MB_OK+MB_ICONERROR);
end;
10055:begin
MessageBox(Handle,'缓冲不足!','系统提示',MB_OK+MB_ICONERROR);
end;
10056:begin
MessageBox(Handle,'Socket 已经连接!','系统提示',MB_OK+MB_ICONERROR);
end;
10057:begin
MessageBox(Handle,'Socket 未连接!','系统提示',MB_OK+MB_ICONERROR);
end;
10058:begin
MessageBox(Handle,'Socket 已经关闭!','系统提示',MB_OK+MB_ICONERROR);
end;
10060:begin
MessageBox(Handle,'没有找到服务器,请确定ip地址是否正确.......','系统提示',MB_OK+MB_ICONERROR);
MessageBox(Handle,'超时!','系统提示',MB_OK+MB_ICONERROR);
end;
10061:begin
MessageBox(Handle,'服务器已关闭,请稍后再拨.......','系统提示',MB_OK+MB_ICONERROR);
MessageBox(Handle,'连接被拒绝!','系统提示',MB_OK+MB_ICONERROR);
end;
10064:begin
MessageBox(Handle,'主机已关闭!','系统提示',MB_OK+MB_ICONERROR);
end;
10065:begin
MessageBox(Handle,'找不到路由!','系统提示',MB_OK+MB_ICONERROR);
end;
10067:begin
MessageBox(Handle,'进程太多!','系统提示',MB_OK+MB_ICONERROR);
end;
10109:begin
MessageBox(Handle,'类型未找到!','系统提示',MB_OK+MB_ICONERROR);
end;
11001:begin
MessageBox(Handle,'找不到主机!','系统提示',MB_OK+MB_ICONERROR);
end;
else begin
MessageBox(Handle,Pchar('不明原因错误:!'+ IntToStr(ErrorCode)),'系统提示',MB_OK+MB_ICONERROR);
end;
end;
ErrorCode:=0;
if ClientSocket.Active then
ClientSocket.Active:=False;
end;