for i := 1 to length(transinfo) do
if transinfo[i]='#' then //找到了
begin
j[h]:=i;
inc(h);
continue; //跳出循环
end;
begin
for l:=1 to j[1]-1 do
extractdomainuser:=extractdomainuser+transinfo[l]; //提取的登陆域用户名
://showmessage(extractdomainuser);
for m:=j[1]+1 to j[2]-1 do
extractdomainname:=extractdomainname+transinfo[m];//提取的域控制器名
//showmessage(extractdomainname);
for n:=j[2]+1 to length(trim(transinfo)) do
extractcomputername:=extractcomputername+transinfo[n];//提取的计算机名
//showmessage(extractcomputername);
end;
end;//进行异常处理
except
// messagebox(0,'信息提取出现错误!','提示信息',mb_iconinformation);
end;
end;
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
procedure querythread.shellexequery;
var
mark:string; //保存查找到的工号信息
skillinfor:string;
retureinformation:string; //返回个客户端的信息
workgroupuserinfor:tstringlist;
filename:string;
begin
try
begin
fadoquery.close;
fadoquery.sql.clear;
fadoquery.sql.add ('select * from logon where domainuser='+'"'+extractdomainuser+'"'+'and domainname='+'"'+extractdomainname+'"'+'and computername='+'"'+extractcomputername+'"'+'and ipaddress='+'"'+fipaddressinfo+'"');
fadoquery.prepared :=true;
fadoquery.active:=true;
file://=====================================================================
if (fadoquery.fieldbyname('workmark').asstring ='') or (fadoquery.fieldbyname('privilege').asstring='') then //没有查到工号信息
begin
fnmmsg.disconnect;
fnmmsg.host:=fipaddressinfo;
fnmmsg.port :=6711;
fnmmsg.fromname :='a';
fnmmsg.postit(defeat); //没有找到权限和工号则发送错误消息
fadoquery.active:=false;
end
else //查询到了工号,和权限信息 ,从阶连表中得到所有信息
//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
begin
strlist.clear;
strlist.add(fadoquery.fieldbyname('workmark').asstring);//把工号写入