Share via


ICcBootstrap (Windows Embedded CE 6.0)

1/5/2010

All connectivity bootstrap services implement the core bootstrap interface, ICcBootstrap. This interface provides functionality to bootstrap a device with a run-time image, or with applications.

ICcBootstrap supports following functionality:

  • Flashing a device with a run-time image
  • Downloading applications to a flashed device
  • Launching applications on a CE device
  • Getting basic device information such as OS version, processor information, and so on.

The following steps show a typical process for using a download service. This process assumes that the client has implemented the ICcService interface through the service host, or that the client created an instance of the service directly with COM.

  1. Initialize the associated device ID with ICcService::Initialize
    This initializes the target device ID associated with the service. The download service uses the target device ID to query for properties from the datastore.
  2. Establish a connection between the desktop and the device with ICcService::Connect
    This establishes a connection between the desktop download service and a target device. For example, if you use the Ethernet Kernel Download service, calling ICcService::Connect ensures that the service has the target device IP address.
  3. Call IUnknown::QueryInterface for an ICcBootstrap object.
  4. When the connection is active, call ICcBootStrap::Download to download requested files to the device
    This downloads the requested files to a target device. You can repeat step 4 an unlimited number of times.
  5. Call ICcBootStrap::Launch to start an application or start up a run-time image.
  6. Call ICcService::UnlockService.
    This releases the service interface. If there are no other references to this service, the service object is deleted and subsequent calls to ICcSvcHost::GetService create new instances of this service.

You can also load a download service directly using the COM activation call CoCreateInstance, or instantiate a kernel download service that uses ICcSvcHost::GetService.

If you instantiate a download service by using ICcSvcHost, the download service remains loaded in the service host process until the lock count for the service is larger than 0. The lock count is controlled through ICcService::LockService and ICcService::UnlockService.

If you start a download service directly using a COM call, the service remains in the client process space until the reference count for the object equals 0.

Note

Implementing ICcService requires bootstrap services.

Methods

The following tables show the methods for this interface. The interface inherits the methods for the IUnknown and IDispatch.

The following table shows the methods for the IDispatch interface.

Method Description

IDispatch::GetIDsOfNames

Maps a single member name and an optional set of parameter names to a corresponding set of integer dispatch identifiers (DISPIDs).

These identifiers can then be used on subsequent calls to IDispatch::Invoke.

IDispatch::GetTypeInfo

Retrieves the type information for an object.

IDispatch::GetTypeInfo

Retrieves the number of type information interfaces provided by an object, either zero (0) or 1.

IDispatch::Invoke

Provides access to properties and methods exposed by an object.

The following table shows the methods for the ICcBootstrap interface.

Method Description

ICcBootstrap::Download

Starts a download of a file from the host to the device.

ICcBootstrap::GetDeviceInfo

Queries a device for resource information and returns the information to the caller.

ICcBootstrap::GetFile

Copies the specified file from the device to the desktop.

ICcBootstrap::GetFileInfo

Gets information about a file on the device.

ICcBootstrap::Launch

Launches an application that uses command line arguments on the remote device.

Enumerations

The following table shows the enumerations for the ICcBootstrap interface.

Programming element Description

ICcBootstrap::DeviceInfo

Lists possible names for device information properties.

Requirements

Header ccbootstrap.idl
Windows Embedded CE Windows CE 5.0 and later

See Also

Reference

Core Connectivity Interfaces