Asynchronous Data Source Initialization
Consumers wishing to initialize a data source object asynchronously set the DBPROPVAL_ASYNCH_INITIALIZE bit in the DBPROP_INIT_ASYNCH property prior to calling IDBInitialize::Initialize. When this property is set, the provider returns immediately from the call to Initialize with either S_OK, if the operation has completed immediately, or DB_S_ASYNCHRONOUS, if the initialization will continue asynchronously. Consumers can call IDBAsynchStatus::GetStatus to get the status of the initialization or can register for progress notifications by passing the consumer's IDBAsynchNotify interface to the data source object's connection point. The consumer must explicitly request Asynchronous Data Source Initialization. Otherwise, IDBInitialize::Initialize does not return until the data source object is completely initialized.