Jump to content

MikeMon

Members
  • Content Count

    147
  • Joined

  • Last visited

  • Days Won

    1

Posts posted by MikeMon


  1. 4 hours ago, Rollo62 said:

    Do you need IbTogo ?

    I recall a case where this was added by some unit,

    Once removed it compiled, but that was an older Xcode  case.

    Actually, I think this has to do with Firebase using Kastri. with SDK 13.7 it was working fine.


  2. After applying the patch, and adding the iOS Device 64-bit SDK 14.2, I'm getting the following error:

     

    [DCC Error] E2597 ld: warning: dwarf DW_FORM_strp (offset=0xFFFFFFDC) is too big in c:\program files (x86)\embarcadero\studio\20.0\lib\iOSDevice64\Release\libibtogo.a(ail.o).

     

    Switch to 13.7, everything's fine.


  3. 30 minutes ago, Dany Marmur said:

    @Sriram is definately correct. Hiding metadata, IMHO, is like encrypting a chunk of javascript in order to protect your IP. It is not a brilliant idea from start so i think that you need a lot on your feet for starting such a project/endeavour.

    You would also need a higher level of maintenance and secure funding because you are the only one who can use tools on that database. I have had a few IB/FB databases sent my way where the problem was the client, not the DB.

    @Sriram& @Dany Marmur

     

    Thank you for your input.

     

    Dany, allow me to disagree with you in the sense that you are assuming that firstly, I want to HIDE the metadata, and secondly, that what's important in terms of protection is just the data and NOT the metadata. What I really want is to show the metadata of ONLY the tables or views that I've given a user a view access to; which should be the default behavior in my opinion. Only the database owner and the sysdba should have full access to view all the metadata by default. To give you an example, I've created a view and given view access to a user to just view the data in that view, but that user can connect to the database, let's say with IBConsole, and view the metadata of the whole database. In this way, they can use the metadata for their own use, e.g. set up their own database. For me this is a no-brainer. Why would I give a view access to a user for a single view, but be OK for that user to see my database's whole metadata?


  4. 4 minutes ago, Tomo said:

    Yes, I agree with you, that a solution has to be found. By my opinion, the problem is connected with older versions of Windows and obviously with TLS1.2 security protocol. I've tried a few suggestions from the net, but nothing worked by now. I'm still waiting for the reply from Quality center...

    It IS connected with older Windows versions which use TLS 1.1 or below. But as long as Postman works on those older Windows versions, there should be a solution with TRESTClient.

     

    Would you share the Quality Central issue link for me to follow up as well?


  5. 1 hour ago, Tomo said:

    Hello!

     

    As I read this post, I saw that I have the same problem. REST debugger and Execute in design don't work on my Win8.1 machine, but it works ok on Win 10 machine. The same request works ok using Postman on my machine. Has a problem already  been solved? I've also opened an issue in quality center...

     

    Thanks

     

    Tomaz

    No solution yet. A solution has to be found because, like I said, other software, e.g. Postman, work fine.


  6. 1 hour ago, Dmitry Arefiev said:

    1) If server is publicly accessible, please, log this issue to quality.embarcadero.com and attach simple test project. If there is some sensitive information, which you dont want to share publicly, then let me know. We can exchange it privately.

    2) Otherwise, you can try to analyze the server using https://www.ssllabs.com/ssltest/ This may give some hints.

    I checked the site using  https://www.ssllabs.com/ssltest. It uses TLS1.2. In the handshake simulation, IE11 / Win7 and IE11 / Win8.1 return with "Server sent fatal alert; handshake_failure" message.

     

    Just FYI, as I wrote above, the problem is on a Windows Server 2012 R2. On my Windows 10 computer, it's working properly. Moreover, on the same Windows Server 2012 R2, the Postman software is working fine.


  7. 2 hours ago, bdw_nz20 said:

    Could it be the SSL version being used on the server ?

     

    Might not be negotiating the correct version ?  Could check if they are restricted to v1.1 or v1.2, I believe you can set the max version to use at runtime.

    Disabling TLS v1.2 on Postman is producing the same error. Disabling all other options and leaving only TLS v1.2 is working fine on Postman. So, I disabled the TLS13 in the TRESTCLient.SecurityProtocols, but I'm getting the same error.

     

    BTW, this is on a Windows Server 2012 R2 (which was working correctly until 2 days ago). On my Windows 10 computer, it's working properly. 


  8. Using a TRESTClient on Delphi 10.4, I'm getting the following exception when sending a POST request to a https site:

     

    REST request failed: Error sending data: (12175) A security error occurred.

     

    FYI, "REST Debugger" that ships with Delphi 10.4 is producing the same exception, while the same request, to the same https site, is working perfectly with Postman.

     

    Any ideas?


  9. 54 minutes ago, Alexander Sviridenkov said:

    This is an FMX issue, not related to Java. On mobile platforms FMX use own text rendering - glyphs are rasterized to (cached) bitmaps and these bitmaps are drawn to openGL textures. This code is not perfect and sometimes (depending on screen resolution and scaling) produce lines on bitmap edges.

    Hi Alexander

     

    Thank you for your input.

     

    That's weird because this just started happening lately with the latest app we are developing.


  10. Hi

     

    I'm using Delphi 10.3.3.

     

    I have a problem with TLabels on Android. There are horizontal or vertical lines on some letters in the TLabel. As you can see on the attached image, the "d", "y" and "A" of the label "Cloudy Apple Juice" have lines on them. So do the "h", "O", "u", "c" and "e" of the label "Fresh Orange Juice". I'm using Java JDK version 1.8.0_261. I don't know if this has anything to do with it, but lately I had to uninstall the JDK (of which I don't remember what the version was) and reinstall it (version 1.80._261).

     

    Has anyone encountered this before?

     

    And what is the default version installed by Delphi 10.3.3.

     

     

    Android TLabel.jpg


  11. Hi

     

    I'm using Delphi 10.3.3.

     

    I have a problem with TLabels on Android. There are horizontal or vertical lines on some letters in the TLabel. As you can see on the attached image, the "d", "y" and "A" of the label "Cloudy Apple Juice" have lines on them. So do the "h", "O", "u", "c" and "e" of the label "Fresh Orange Juice". I'm using Java JDK version 1.8.0_261. I don't know if this has anything to do with it, but lately I had to uninstall the JDK (of which I don't remember what the version was) and reinstall it (version 1.80._261).

     

    Has anyone encountered this before?

    Android TLabel.jpg


  12. After some testing, I found out the following:

     

    The advancedTestApp is crashing on Android and not compiling on iOS using Delphi 10.4. The reason is that the FMX.Media.Android.pas and FMX.Media.AVFoundation.pas (and maybe the FastUtils.pas) provided by ZXing Delphi are not compatible with Delphi 10.4. AdvancedTestApp works just fine with the original files coming with Delphi 10.4. But unfortunately, by using the originals, the app is VERY slow both on iOS and Android.

     

    Any third party camera controls recommended for Firemonkey (Android and iOS) except winsoft?


  13. 24 minutes ago, vfbb said:

    @MikeMon Today I don't have an android device to check it, but first I would check 2 things in andoird:

    1) the Porject Options > Uses Permission > Camera = true.

    2) Test if the "TFormMain.AccessCameraPermissionRequestResult" is executing in the main thread with LIsMainThread := TThread.Current.ThreadID = MainThreadID;

     

    About Delphi 10.3.3 I do not use anymore and the code of iOS that I posted will work only in 10.4 because the iOSapi.AVFoundation.pas of the 10.3.3 not have the apis of media permission.

    Camera is true and the AccessCameraPermissionRequestResult IS in the main thread.

     

    The error on 10.3.3 is on Android ONLY.


  14. 1 hour ago, vfbb said:

    Mike, the "PermissionsService .RequestPermissions" works only in Android, in others platforms it have not been implemented, will simple skip.

     

    The code I gave you will work perfectly, but I think you are having trouble adapting it. So I simplified things for you:

    And to use, replace your TFormMain.FormActivate by this:

    Note: To test the permission you need to unistall your app before compile.

     

    1.) Thank you for your valuable help. I will check the iOS code above. Just FYI, the Android version is not working, either. When running the advancedTestApp, though it IS asking for permission and I'm choosing yes, the minute I'm using the "Scan off/on" button, the app is freezing.

     

    2.) In addition to the above, I'm getting the following error on some Android devices and using Delphi 10.3.3, Assertion failure (FastUtils.pas, line 172), which is 

    Assert((ASrcHeight and 3) = 0);

    Any ideas?


  15. 9 hours ago, vfbb said:

    What I doing? If the status is not determined (first time) I request the access (you can request just if the status is not determined). If is denied I simple show a message informing to go to the Settings and enable the permission manually (all aps do this, example: Telegram). 

     

    Hi. I'm using the code provided in the uMain.pas unit of the advancedTestApp project. This is some of the code for the camera permission:

    // Optional rationale display routine to display permission requirement rationale to the user
    procedure TFormMain.DisplayRationale(Sender: TObject; const APermissions: TArray<string>; const APostRationaleProc: TProc);
    begin
      // Show an explanation to the user *asynchronously* - don't block this thread waiting for the user's response!
      // After the user sees the explanation, invoke the post-rationale routine to request the permissions
      TDialogService.Showmessage('The app needs to access the camera in order to work',
        procedure(const AResult: TModalResult)
        begin
          APostRationaleProc
        end)
    end;
    
    
    
    procedure TFormMain.AccessCameraPermissionRequestResult(Sender: TObject; const APermissions: TArray<string>; const AGrantResults: TArray<TPermissionStatus>);
    begin
      // 1 permission involved: CAMERA
      if (Length(AGrantResults) = 1) and (AGrantResults[0] = TPermissionStatus.Granted) then
      { Fill the resolutions. }
      begin
        CreateCamera();
      end
      else
        Showmessage('Cannot access the camera because the required permission has not been granted')
    end;
    
    
    
    procedure TFormMain.FormActivate(Sender: TObject);
    begin
    {$IFDEF ANDROID}
      FPermissionCamera := JStringToString(TJManifest_permission.JavaClass.CAMERA);
    {$ENDIF}
      PermissionsService.RequestPermissions([FPermissionCamera], AccessCameraPermissionRequestResult, DisplayRationale);
    end;
    
    
    
    procedure TFormMain.StartCapture;
    begin
    
      FBuffer.Clear(TAlphaColors.White);
      FActive := True;
      LabelFPS.Text := 'Starting capture...';
      PermissionsService.RequestPermissions([FPermissionCamera], ActivateCameraPermissionRequestResult, DisplayRationale);
    
      StartStopWatch();
      lblScanning.Text := 'Scanning on';
      FaLblScanning.Enabled := True;
    end;
    
    
    
    procedure TFormMain.ActivateCameraPermissionRequestResult(Sender: TObject; const APermissions: TArray<string>; const AGrantResults: TArray<TPermissionStatus>);
    begin
      // 1 permission involved: CAMERA
      if (Length(AGrantResults) = 1) and (AGrantResults[0] = TPermissionStatus.Granted) then
      begin
        { Turn on the Camera }
        CreateCamera();
        FCamera.Active := True;
      end
      else
        Showmessage('Cannot start the camera because the required permission has not been granted')
    end;
    
    
    
    procedure TFormMain.CreateCamera();
    begin
      if (FCamera <> nil) then
        exit;
    
      FCamera := TCameraComponent.Create(self);
      FCamera.Quality := TVideoCaptureQuality.MediumQuality;
      FCamera.FocusMode := TFocusMode.AutoFocus;
    
      FCamera.OnSampleBufferReady := CameraComponent1SampleBufferReady;
    end;

     


  16. 33 minutes ago, vfbb said:

    Ok, but the permission will be show just at first time. If your user negate the permission once, he will need to give the permission manually at the Settings of the iOS. In iOS go to the Settings > Your App > enable Camera, and try again

    It's not even asking the first time. Unfortunately.


  17. 2 minutes ago, vfbb said:

    Mike, if your notebook/desktop have a webcam test in windows. Your problem on mobile can be related to the permission to have access to the camera and not in relation to the ZXing code. Here I use it only in windows, and with Delphi 10.4 is working fine.

    Hi. Thank you for your answer. The code working on Delphi 10.3.3 is crashing on Delphi 10.4. Btw, if the user hasn't given permission to access the camera yet, he/she will be asked to give one. That works quite fine on Delphi 10.3.3.

×