定義乙個全域性liststring用於接收socket的內容
var
resv:tstringlist;
開啟應用程式時建立resv,在formcreate中進行建立
resv := tstringlist.create;
procedure tmainframe.serversocketclientconnect(sender: tobject;
socket: tcustomwinsocket);
begin
resv.clear;//清空儲存的內容
end;
procedure tmainframe.serversocketclienterror(sender: tobject;
socket: tcustomwinsocket; errorevent: terrorevent; var errorcode: integer);
begin
case errorcode of
10053:socket.close;
end;
errorcode := 0;
end;
procedure tmainframe.serversocketclientread(sender: tobject;
socket: tcustomwinsocket);
var
ilength,i :integer;
sdata,key,path,send : string;
ansidata,ansiout : ansistring;
msg,result : isuperobject;
begin
ilength := socket.receivelength;
if ilength > 0 then
begin
resv.add(socket.receivetext);
i := resv.count;
if tagcount(ansistring(resv.strings[i-1]),'*') > 0 then
begin
sdata := resv.text;
if (sdata.startswith('#') and (sdata.contains('*'))) then
begin
trysdata := stringreplace(sdata.trim,chr(13)+chr(10),'',[rfreplaceall]); //刪除回車
ansidata := copy(sdata,2,sdata.length - 2); //刪除接收內容中的#號和*號 (#和*用來對內容進行封包的所以要去除)
resv.clear;
base64decode(ansidata,ansiout); //接收內容進行base64解碼
sdata := ansiout;
msg := so(sdata); //轉碼後的內容轉換成json物件
result := so;
if (msg['flag'].asinteger = 1) then
begin
result.s['msg'] := '接收成功';
result.b['state'] := true;
socket.sendtext(result.asstring+#13#10);
endexcept
end;
end;
end;
end;
end;
function tmainframe.tagcount(source: ansistring; tag: ansichar): integer;
var i, tcount: integer;
begin
tcount := 0;
for i := 1 to length(source) do
if source[i] = tag then inc(tcount);
result := tcount;
end;
iOS MBProgressHUD的使用方法
mbprogresshud就是乙個非常好用的第三方庫,可以快速接入載入的介面,下面貼 下面的 包含了各種常用型別的載入 import viewcontroller.h import mbprogresshud.h inte ce viewcontroller property atomic,assi...
dbms output put line使用方法
begin dbms output.put line a end 如果你是再sql plus中,只要再環境中打出 set serveroutput on 就可以了.還有一種方法 就是使用環境中的繫結變數也可以.再環境中定義 variable name varchar2 50 然後把過程新增乙個out...
sp addlinkedserver使用方法
exec sp droplinkedsrvlogin dbvip,null exec sp dropserver dbvip exec sp addlinkedserver server dbvip 被訪問的伺服器別名 srvproduct provider sqloledb datasrc ser...