Resources | Resources |



Connect implementations


Connect uses a .lib file linked in with a user-executable, so that the application using the Connect DLL can make API calls as if the function were local. Connect implements its own .lib file rather than using the Microsoft-generated import library.

ConnectCore.lib has two primary functions:

  1. Locate and load the ConnectGW.dll library.
  2. Return the CONNECTCORE_EAPINOTIMPL error code for functions that are not implemented in the ConnectGW.dll. This allows tools that were written for newer versions of Connect to handle running against older versions of the Connect library.

How tools load Connect

There is only one active version of Connect at any one given time. The following shows the rules for the order in which the ConnectGW.dll is loaded:

  1. An overridden location invoked by calling ConnectImpLib_SetConnectPath().
  2. An overridden location in the registry: HKLM\SOFTWARE\Qualcomm\Connect, value called LibraryPath. This points to ConnectGW.dll. This should only be set for development purposes.
  3. %BREWMP_TOOLSET%/bin/ConnectGW.dll.
  4. %BREWMPSDK%/../tools/bin/ConnectGW.dll.

Connect needs to find two different components: The OS Services library, a1host.dll, and OS Services modules required to implement Connect functionality, sometimes referred to as the microcosm. For a1host.dll the search order is:

  1. An a1host.dll located in the same directory as the ConnectGW.dll being used.
  2. %BREWMP_TOOLSET%/bin/a1host.dll.
  3. %BREWMPSDK%/system/componentservices/lib/Win32_ReleaseG/a1host.dll.

For the microcosm, the search is done as follows:

  1. A subdirectory called a1 located in the same directory as the ConnectGW.dll being used.
  2. %BREWMP_TOOLSET%/bin/a1.
  3. %BREWMPSDK%/../tools/bin/a1.

How tools load BTIL

  1. If BTILExtension.dll is in the system path it is used. Otherwise look in the InstallPath value of HKLM\SOFTWARE\Qualcomm\BTIL
  2. BTILServer.exe is started by the first BTILExtension.dll. Looks in the InstallPath value of HKLM\SOFTWARE\Qualcomm\BTIL.