Jump to content
uniGUI Discussion Forums

jaromir

uniGUI Subscriber
  • Content Count

    75
  • Joined

  • Last visited

Posts posted by jaromir


  1. Gerhard in new uni-dusk theme grid header is different. Font is orange which - only at this theme. In my opinion previous was better.

    In all other themes grid header font is dark.

    Is it easy to change to previous ?

    Edit: And there is a problem with combobox at FireFox.

    Bez tytułu.png


  2. Hello nimarufa,

     I use Your code to replace TUniCanvas which makes GDI leaks for me.

    I think that You don't need to create var image. It is enough to call (after png save):

    UniSession.AddJS(Format('ajaxRequest(%s, "ImageUpdated", ["ImageUrl=%s"]);', [fFrame.JSName, lUrl]));

    And in Ajax frame event:

    if SameText(EventName, 'ImageUpdated') then
      UniSession.AddJS(Format('document.getElementById("preloaded_image").src = "%s";', [Params.Values['ImageUrl']]));

    So it is not necessary to create global url variable.


  3. Hello,

    What is Your real GDI Objects count ? In my simple app (max 12 sessions) after 11 days it is more than 700. But it still growing day by day. Maybe I have some leaks at 3rd party code ?

    Should this objects count be smaller and greater according to sessions count ?

    Thanks. 


  4. I made this this way. But this is workaround.

    I'm pretty sure that better way exists.

      TDMMain = class(TUniGUIMainModule)
      private
        { Private declarations }
        fLastFormInstanceClassName: String;
      public
        { Public declarations }
        function GetFormInstance(const InClass: TClass): TComponent;
      end;
      
    function TDMMain.GetFormInstance(const InClass: TClass): TComponent;
    begin
      fLastFormInstanceClassName := InClass.ClassName;
      Result := inherited GetFormInstance(InClass);
    end;
    
      TDMServer = class(TUniGUIServerModule)
        procedure UniGUIServerModuleException(Sender: TUniGUIMainModule; AException: Exception;
          var Handled: Boolean);
      end;
      
    procedure TDMServer.UniGUIServerModuleException(Sender: TUniGUIMainModule; AException: Exception;
      var Handled: Boolean);
    begin
      SendEmailMessage(DMMain.LastFormInstanceClassName, AException.ClassName, AException.Message);
    end;  

     


  5. On 10/30/2018 at 5:50 AM, elGringo said:

    But how, for example you find memory leak in special exact place of code?

    Regards, Stan

    Hello Stan

    I’m not at screen at this moment so I give You only brief. 

    First You have to enable FullDebugMode in FastMM configuration file. You have to remove dot at proper line. 

    Next You have to enable „include debug info” at compilator options. After next build You can execute app. During app close, if any leak will be detected You will see detailed log file with code lines whitch makes leaks. 

    Don’t forget to disable including debug info in next builds because it makes exe much more bigger in size. 

    Best regards

    Jaromir


  6. Hi. 

    For me it is not good idea. What do You want to achive ? Cleaning memory after application close ?

    For me leak is mistake / error and I want to repair all this mistakes. I use fastmm or similar solution with full debug mode. All leaks should be repaired at place where they appear. 

    Cleaning all leaks at app close is dirty solution. Your app can work long time without restart and it should consume as small amount of memory as possible.


  7. 16 hours ago, Ruslan said:

    How many projects on Delphi works on Linux, and how many on Windows? I think that <10% under linux and from a commercial point of view there is no sence to waste time on that when you still not good on Windows.

    I’m sorry my friend but perhaps You don’t understand what unigui is and what it works.

    It is a lot of reasons to have unigui at Linux. For me Windows is a bigest disadventage of unigui.

    We wrote a lot of Unix/Linux deamons in delphi which are compiled at target hosts at FPC. It works like a harm with remobject soap/binary protocols and with zeos database support. I mean quite big production systems working from years.


  8. On ‎4‎/‎6‎/‎2018 at 9:51 PM, Farshad Mohajeri said:

    I will add my comment later when I have enough time to fully address all of your concerns mentioned here in this thread.

    I'm using UniGui and I'm scared.

    The father released code with using UniGui the more "So if…"

    I'm sorry - I'm very sorry about this approach but what If something wrong happened with Mr. Farshad.

×