Kullanıcı kaydı

Kullanıcı kaydı için bir satır kümesi sütun verileri temsil eden kod ve veri yapısı sağlar. Kullanıcı kaydı, derleme sırasında veya çalışma zamanında oluşturulabilir. atl nesne Sihirbazı'nı kullanarak sağlayıcı oluşturduğunuzda, sihirbaz, şuna benzer bir varsayılan kullanıcı kayıt oluşturur.:

class CWindowsFile:
   Genel WIN32_FIND_DATA
{
public:

BEGIN_PROVIDER_COLUMN_MAP(CWindowsFile)
   PROVIDER_COLUMN_ENTRY ("FileAttributes", 1, dwFileAttributes)
   PROVIDER_COLUMN_ENTRY ("FileSizeHigh", 2, nFileSizeHigh)
   PROVIDER_COLUMN_ENTRY ("FileSizeLow", 3, nFileSizeLow)
   PROVIDER_COLUMN_ENTRY ("DosyaAdı", 4, cFileName)
   PROVIDER_COLUMN_ENTRY ("AltFileName", 5, cAlternateFileName)
END_PROVIDER_COLUMN_MAP()

}

Ole db sağlayıcısı Şablonlar tüm ole db özellikleri istemci etkileşimi ile ilgili işler. Bir yanıt için gerekli sütun veri almak için sağlayıcı kullanıcı kaydında yerleştirmelisiniz GetColumnInfo işlevini çağırır.:

şablon lt; sınıf t >
statik ATLCOLUMNINFO * GetColumnInfo(T* pThis, ULONG* pcCols)
 

PROVIDER_COLUMN_MAP makrolar Yardım GetColumnInfo fonksiyon oluşturma:

Çalıştırma sırasında bir kullanıcı kayıt oluşturulduğunda, GetColumnInfo bir işaretçi bir satır kümesi veya komut örneği almak için pThis parametresini kullanır. Böylece bu işaretçiyi sütun bilgileri alınabilir komutları ve satır kümeleri IColumnsInfo arabirimini desteklemesi gerekir.

Burada gösterildiği gibi açıkça GetColumnInfo kullanıcı kaydında kılabilirsiniz:

şablon lt; sınıf t >
statik ATLCOLUMNINFO * GetColumnInfo(T* pThis, ULONG* pcCols)
 

Bu denktir:

statik ATLCOLUMNINFO * GetColumnInfo(CommandClass* pThis, ULONG* pcCols)
statik ATLCOLUMNINFO * GetColumnInfo(RowsetClass* pThis, ULONG* pcCols)

CommandClass ve RowsetClass komut ve kullanıcı kaydı kullanma satır kümesi vardır.

Nasıl GetColumnInfo kullanıcı kaydında geçersiz kılmak için ek bir örneği için bkz: basit bir erişimle sağlayıcısı oluşturma.

Geri ole db sağlayıcısı şablon mimarisi

Index