Jump to content

FPiette

Members
  • Content Count

    1120
  • Joined

  • Last visited

  • Days Won

    15

Everything posted by FPiette

  1. Thanks for all having tested. It definitely doesn't work here. Just to be sure: it compile fine but at runtime, the server hang on receiving message. So are you sure you tested at runtime and successfully sent a message (In the edit box) from client to server? (Instruction in my first message above). My tests are done on Windows 7 up-to-date. Thanks.
  2. I confirm it work on 10.1 Berlin 32 bit. I confirm it doesn't work on Rio 10.3 Update 1 (Version 26.0.33219.4899). That is what is required for me. I was testing previous versions in the hope to find out what was broken at some point. Best Regards, François PIETTE Embarcadero MVP
  3. Someone willing to stay anonymous send me this information: Installation v8: Download and extract ICS package Exit BCB rename/delete \bpl\Overbyte*.* Compare and copy over: OverbyteICSJwaWinCrypt.inc {$HPPEMIT trailing semi-colon OverbyteICSCB2007Run/Design.cbproj pathing 1. Paths and Defines|Final Output says your bpl directory 2. Paths and Defines|BPI/Lib Output says bpl directory OverbyteICSCB2007Run/Design extra pragma links 1. #pragma link "crypt32.lib" 2. #pragma link "cryptui.lib" Source\OverbyteIcsSslSessionCache.pas 1. Comment out DateUtils (as breaks pch) 2. replace IncSecond function with t1 := ((t2 * SecsPerDay) + SessionTimeOut) / SecsPerDay; Source\OverbyteIcsCryptUiApi.pas comment out hppemit OverbyteIcscryptuiapi.h Copy source\zobj125 *.obj to source folder Start BCB Say yes to module load again message - if you say No then must use Regedit to remove the disabled package (Computer\HKEY_CURRENT_USER\Software\Borland\BDS\5.0\Disabled Packages) Open \ics\Install\CB2007Install.groupproj Select and Build the run-time package in RELEASE mode (do not install). Select and Install the design-time package. Then do a "Save All" and a "Close All". Restart BCB Create cmp/ics/headers copy all C:\dev\cmp\ics\Lib\Debug\Win32\D2007\Overbyte*.hpp to that folder Diff with previous headers and comment out bits and bobs comment out all typedefs in OverbyteICSCryptUiApi.hpp Headers\OverbyteIcsHttpAppServer.hpp 1. AddGetHandler use EmptyStr instead of "" 2. AddGetHandler use EmptyStr instead of "" 3. AddGetAllowedPath use EmptyStr instead of "" 4. AddPostHandler use EmptyStr instead of "" 5. AddPostHandler use EmptyStr instead of "" 6. comment out IcsLoadTHttpAppSrvFromIni Headers\OverbyteIcsHttpSrv.hpp MakeCookie use EmptyStr Headers\OverbyteIcsSslHttpRest.hpp 1. RestRequest use EmptyStr 2. GrantAuthToken use EmptyStr Headers\OverbyteIcsSslSessionCache.hpp ensure your DateUtils include Headers\OverbyteIcsSslX509Certs.hpp 1. AddItem use EmptyStr 2. DumpJson use EmptyStr 3. CCGetRequest use EmptyStr Headers\OverbyteIcsSslX509Utils.hpp 1. WriteReqToBio EmptyStr 2. SaveToCADatabase EmptyStr OverbyteIcsSslX509Utils.hpp WriteReqToBio use EmptyStr headers\OverbyteIcsSuperObject.hpp 1. comment out virtual _di_ISuperObject __fastcall GetN 2. comment out _di_ISuperObject NWideString path 3. virtual bool __fastcall Validate remove L"" 4. comment out ParseString 5. comment out ParseStream 6. comment out ParseFile 7. comment out ParseEx 8. bool __fastcall Validate( remove L"" 9. _di_ISuperObject __fastcall SO( remove L"" headers\OverbyteIcsWinCrypt 1. comment out typedef _VTableProvStruc *PVTableProvStruc; 2. comment out typedef _VTableProvStruc TVTableProvStruc; add to Tools->Options->Environment Options->C+ Options->Paths & Dirs: Paths \ics\headers Load a project any In project options->Packages check the design packages are referenced from \bpl Check design TMS softwares packages are enabled (bizarrely this sometimes get unchecked ) Save all, close all, restart Distribute cmp directory to other dev(s)
  4. FPiette

    Install ICS Components

    Hello, I would suggest to download the latest ICS snapshot, it contains changes related to C++ Builder support although I'm not sure the changes have been propagated from latest C++ Builder version projects to the old one you still use. Another suggestion is that you recreate yourself the ICS package adapted for you C++ Builder version. ICS are standard component and do not make use of any special feature. If you know well C++ Builder, then you should be able to create the new package project (Maybe containing only the components you are interested in). A third suggestion is to repost your message using a suitable subject to catch attention of C++ Builder user that are reading this forum. Something like "Error installing ICS with C++ Builder XE3" François
  5. FPiette

    Round robin DNS look-ups

    I think if would be interesting to have the component doing those attempts internally. I would add a new event handler that is called when an IP address has failed. 3 arguments: IP address, an abort flag (passed by reference) and a context. If the event handler is not assigned, then the component does nothing to try the next available IP. The event is also called when success, before OnSessionConnected, with the correct IP address. The context argument let your code know if it is a failed IP address or the successful IP address. François
  6. FPiette

    IC Logger...

    Usually, this kind of corruption comes from calling the message pump from TWSocket.OnDataAvailable event handler. The call can be indirect, that is message pump called inside a function which is called from OnDataAvailable event handler. Many component incorrectly call the message pump, so be careful when using such component. The solution is usually found in using a custom message posted to trigger the processing with the data.
  7. You can find my street address in the comments in front of each ICS source file.
  8. As far as I understand the code you show, you thread's Execute method doesn't have the message pump. So no event is triggered and nothing works. Another error in your code is that you create the HTTP component within the thread's Create method, which is executed in the context of the main thread! You must create the component in the context of the thread, that is at the beginning of the Execute method. Alternatively, you may call the ThreadAttach method to attaché the component created in another context to the thread's context. First solution is better. Also destruction must be done at the end of the Execute procedure. There are several multithreaded samples delivered with ICS. You can follow client or server sample, as far as multithreading is concerned, it makes no difference. Regards.
  9. This is the reference document describing the HTPP authentication using Kerberos : https://tools.ietf.org/html/rfc4559 This document https://docs.microsoft.com/en-us/dotnet/framework/wcf/feature-details/understanding-http-authentication will help understand how it works. Everything could probably be implemented in HTTP client component. François Piette
  10. FPiette

    MMX Beta 14.1 available

    This version crashes with Delphi 10.3.1 Version 26.0.33219.4899. See attached file. Mail sent to support@mmx-delphi.de Regards, François Piette Embarcadero MVP www.overbyte.be MMX Code Explorer 14.1 Crash with Rio 10.3.1 Version 26.0.33219.4899.txt
  11. Hello, An interesting feature (IMO): add a popup menu item to the source indexer to show a file in a Windows Explorer window (Much like you have in Delphi project manager). Regards,
  12. Hello, I'm an absolute fan of MMX :: Source Indexer. It is incredibly fast (Well, when scanning is done) and helpful. I'll be more than happy to have MMX :: Source Indexer window remember his position and size each time it is reopened. it is a real pain to have it always opened in the top left corner of the screen with his default position and size. Another important feature I'd like to have: In the search indexer, we have "exclude paths". That's nice but I would like to have "exclude files and paths" and be able to enter a list of wild card file/folder names. For example "*old.*" to suppress scanning of anything ending with "old" in the filename such as "blablaold.pas". Or "*old" to suppress any directory ending by "old" and any file ending by "old" such as "blabla.pas.old" but not "balablaold.pas". Another small feature: when you have auto-scan turned on, the first time you click on the search identifier tool button, the scanning begins. Then when it is done, the identifier you had selected is not searched. You have to click once more. Less important than windows position and size, but interesting for a lazy guy like me. Regards. François Piette Embarcadero MVP
  13. FPiette

    Feature request for Source Indexer

    I'm using Delphi since version 1, every single day of the year. And there are still tricks that I don't know! Thanks.
  14. FPiette

    Feature request for Source Indexer

    There is probably a way to do that since other IDE windows have a popup menu with a dockable item you can check/uncheck. When an IDE form is dockable, it can be tricky to move it exactly where you want to put it. François Piette Embarcadero MVP
  15. FPiette

    Feature request for Source Indexer

    I was not aware of that. Indeed it works as expected. Thank for the tip! How to make the window not dockable? Thanks. François Piette Embarcadero MVP
×