小编Sta*_*ier的帖子

Delphi XE8:使用方法datasnap服务器进行内存泄漏

我目前正在使用Delphi设计Datasnap休息服务器.但我有严重的内存泄漏.

例如,我的方法

procedure TV1.station(ID: integer);
begin


  GetInvocationMetadata().ResponseContent := Manager.xxxxxxAPI.GetObjectStation(ID);
  GetInvocationMetadata().CloseSession := true;     

end;
Run Code Online (Sandbox Code Playgroud)

哪个叫这个功能:

function TSmmAPI.GetObjectStation( const ID: integer ) : string;
(...)
   jsonObject := TJSONObject.Create;   

          stationSelected := xxxxxManager.WorkShops.GetStation( CNCHandle );

          with StatesDB.QueryGetCurrentState( stationSelected.Handle ) do begin

            if RecordCount <> 0 then begin
              ConvertFileToPcom(stationSelected.Ini.FileName, Pcom);


              jsonObject.AddPair( TJSONPair.Create('ID', inttostr(ID)));
              jsonObject.AddPair( TJSONPair.Create('Name', FieldByName(sbStaStationField).AsString));
              jsonObject.AddPair( TJSONPair.Create('Workshop',  stationSelected.Shop.Name));
              jsonObject.AddPair( TJSONPair.Create('Group',  Pcom.Others.GroupName));                  
              jsonObject.AddPair( TJSONPair.Create('CurrentRef', FieldByName(sbStaRefNameField).AsString));
              jsonObject.AddPair( TJSONPair.Create('CurrentState', FieldByName(sbStaStateField).AsString));
              jsonObject.AddPair( TJSONPair.Create('Job', FieldByName(sbStaOPNameField).AsString));
              jsonObject.AddPair( TJSONPair.Create('Order',FieldByName(sbStaOFNameField).AsString));
               //(...), I have 12 addpair. 

              Disconnect;

            end;

            Destroy;
          end;// with StatesDB.QueryGetCurrentState …
Run Code Online (Sandbox Code Playgroud)

delphi json memory-leaks datasnap

2
推荐指数
1
解决办法
657
查看次数

Delphi:呼叫用户选择界面

我可以使用Windows API调用此屏幕吗?

在此输入图像描述

我想使用此界面选择具有域的正确用户.

谢谢 !

windows delphi

2
推荐指数
1
解决办法
346
查看次数

标签 统计

delphi ×2

datasnap ×1

json ×1

memory-leaks ×1

windows ×1