Jump to content

gkobler

Members
  • Content Count

    226
  • Joined

  • Last visited

  • Days Won

    3

Posts posted by gkobler


  1. 1 hour ago, Brian Evans said:

    Suggest trying something like Process Monitor - Sysinternals | Microsoft Learn to see if it shows the IDE is doing / trying to do something external (like access a file over a network etc) when it freezes. 

    Good sugestion, will try it.

     

    1 hour ago, Brian Evans said:

    CTRL-C just puts a text representation of the component definition(s) on the system clipboard - might be slow if the components in question contain a lot of data but it's pretty much the same text as gets saved in the dfm file so shouldn't lock anything up. 

    You can wait for hours.. the IDE still hangs


  2. Does anyone have the same problem as me when selecting several components (visible as well as non-visible) on a form in the IDE. Either by Ctrl-clicking or just with the mouse and then pressing Ctrl-C, the CPU output of the BDE.exe task goes up and the IDE is blocked/freezing. You can then only end the task and have to restart the IDE.

     

    The problem has existed for some time, but since D11, D12 and D12.1 it happens more and more frequently.


  3. 24 minutes ago, Attila Kovacs said:

    So, I opened 2 IDE's and started opening projects. They are written into the "...BDS\23.0\Closed Projects" key immediately, at opening a project. It would be also possible to load that key into the recent list, with an extra button.

    OK, I have also seen that the registry is updated immediately. I was of the opinion that this only happens when the IDE is closed. So I can insert a refresh button.


  4. On 3/16/2024 at 11:22 AM, Attila Kovacs said:

    I'd like to propose a function that allows refreshing the recent projects with a button from the registry, as I'm using multiple IDEs. It would be cool.

    I don't really understand your question. Because when the IDE is started, the registry is read out, then every change is recorded via an event and updated in the rescent files. Therefore a refresh of the registry is not necessary.

     


  5. In the meantime, I have come up with a solution. I have debugged something in the library. I found out that if the protocol is set to "ipLocal", the port is not taken into account. You have to change the protocol to "ipTCPIP" and set the host to "localhost", then it works.

     

    Follow the final code

      FUNCTION TfrmMain.GetFirebirdServerInfo: boolean;
      VAR
        FDIBInfo: TFDIBInfo;
        AVersion: TIBInfo.TVersion;
        AConfig: TIBInfo.TConfig;
      BEGIN
        Result := False;
        IF (teFirebirdInstallPath.Text = '') AND (teFirebirdVersion.Text = '') THEN BEGIN
          FDIBInfo := TFDIBInfo.Create(Self);
          TRY
            FDPhysFBDriverLink.VendorLib := teVendorLibrary.Text;
            FDIBInfo.Protocol := ipTCPIP;
            FDIBInfo.DriverLink := FDPhysFBDriverLink;
            FDIBInfo.Host := 'localhost';
            FDIBInfo.Port := spePort.Value;
    
            FDIBInfo.UserName := teUsername.Text;
            FDIBInfo.Password := tePassword.Text;
            FDIBInfo.GetVersion(AVersion);
            teFirebirdVersion.Text := AVersion.FServerStr;
    
            FDIBInfo.UserName := teUsername.Text;
            FDIBInfo.Password := tePassword.Text;
            FDIBInfo.GetConfig(AConfig);
            teFirebirdInstallPath.Text := AConfig.FServerPath;
    
            Result := True;
          FINALLY
            FDIBInfo.Free;
          END;
        END ELSE BEGIN
          Result := True;
        END;
      END;

     

    • Like 1
    • Thanks 1

  6. 1 hour ago, Ruslan said:

    Did you try to change the fbclient library? In you example I suppose you are using the v3.

    I use the FB5 dll 32bit version.

    FDPhysFBDriverLink1.VendorLib := 'D:\Temp\fbclient32_500.dll';

    FB3 would be the follow

    FDPhysFBDriverLink1.VendorLib := 'D:\Temp\fbclient32_311.dll';

    I renamed the dll as follow

    FB3.0.11 32/64bit -> fbclient32_311.dll / fbclient64_311.dll

    FB4.0.4 32/64bit -> fbclient32_404.dll / fbclient64_404.dll

    FB5.0.0 32/64bit -> fbclient32_500.dll / fbclient64_500.dll


  7. I have installed FB3 as a service. FB2.5, 4.0 and 5.0 are also installed, but i run these version not as a service it runs as program with different port configuration. So i can run different FB-Server versions at the same time.

     

    Port

    3040: FB2.5

    3050: FB3.0 (default)

    3060: FB4.0

    3070: FB5.0

     

    The follow code runs

      PROCEDURE TForm1.Button3Click(Sender: TObject);
      VAR
        FDIBInfo: TFDIBInfo;
        AVersion: TIBInfo.TVersion;
      BEGIN
        FDPhysFBDriverLink1.VendorLib := 'D:\Temp\fbclient32_500.dll';
        FDIBInfo := TFDIBInfo.Create(Self);
        FDIBInfo.Protocol:= ipLocal;
        FDIBInfo.DriverLink:= FDPhysFBDriverLink1;
        FDIBInfo.UserName:='SYSDBA';
        FDIBInfo.Password:='masterkey';
        FDIBInfo.Port:= 3070;
        FDIBInfo.GetVersion(AVersion);
        ShowMessage(AVersion.FServerStr);
      END;

    But it detects the wrong Server version, the result are allways the follow

    WI-V3.0.11.33703 Firebird 3.0

    The code line

    FDIBInfo.Port:= 3070;

    has no influence on the execution. Is this possibly an error or is generally only the FB version of the installed Windows service queried?

     

    Are there a better way to detect the FB-Server version?

     

    I use Delphi 12.0.1

    • Like 1

  8. Thanks for clarifying and investigating. Attached my smal demo project. Just start it and try to change a value at any field. Immediately when you try to post this chages, the exception are raising.

     

    Quality portal is still in read-only mode, so i can't report the bug.

    FireDac Sample.7z


  9. I'm migration a project from FB4 to FB5, i use a TFDQuery and a TFDUpdateSQL component.
     
    My project runs without any problems. I have updated the database from FB4 to FB5 now. Now i got a problem, when i update a Field in my table. The follow exception are rises
     
    Im Projekt Project2.exe ist eine Exception der Klasse EFDDBEngineException mit der Meldung '[FireDAC][Phys][FB]-312. Genau update affected [0] Zeilen, [1] wurden angefordert' aufgetreten.
     
    and
     
    Im Projekt Project2.exe ist eine Exception der Klasse EFDException mit der Meldung '[FireDAC][DApt]-400. Update-Anweisung updated [0] anstelle von [1] Datensatz. Mögliche Ursachen: Aktualisierungstabelle hat keinen Primärschlüssel oder Zeilenbezeichner, Datensatz wurde von einem anderen Benutzer geändert/gelöscht' aufgetreten.
     
    The data field are not updated. When i now set the property UpdateOptions.CountUpdateRecords to False, i just got the first exception and the fiel are updated to the table.
     
    What can i do to avoid the exception? I think the problem should be in the TFDUpdateSQL Component, but something must be changed from FB4 to FB5?
     
    Thanks for any hint
    Gregor

  10. On 1/15/2024 at 5:32 PM, Attila Kovacs said:

    (The Download link is 404 on the English version of the website.)

    Fixed

     

    On 1/15/2024 at 5:32 PM, Attila Kovacs said:

    Could you move the icons to resources or over-load them from files if they exist?

    Or just provide a setting to turn them off?

    I've already thought about implementing it. But I'm very busy with other things at the moment. But I think I will do it.

    • Like 1

  11. On 1/11/2024 at 10:26 AM, AJ_Oldendorf said:

    Can you take a look, if you can find something with TMS components (maybe try the demo) or if you can find something in your plugin?

    If you need more informations, let me know

    StackTrace.txt

    I did not find any info at the stacktrace that the WP-Plugin made the error. There is no entry of my WP-Plugin.

     

    But try to compile and install the follow demo, and look if the same exceptions are happend

    C:\Users\Public\Documents\Embarcadero\Studio\23.0\Samples\Object Pascal\VCL\VCL WelcomePage\ToolsAPI.WelcomePage Basic PlugIn

     

    This demo are the basis of my WP-Plugin

×