Jump to content

Use ICS with C++ Builder 2007

Recommended Posts

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)
Edited by FPiette
  • Thanks 1

Share this post

Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now