Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Data / System / Data / OleDb / OleDbStruct.cs / 1305376 / OleDbStruct.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //----------------------------------------------------------------------------- namespace System.Data.OleDb { using System; using System.Runtime.InteropServices; #if DEBUG using System.Diagnostics; using System.Globalization; using System.Text; #endif internal enum DBBindStatus { OK = 0, BADORDINAL = 1, UNSUPPORTEDCONVERSION = 2, BADBINDINFO = 3, BADSTORAGEFLAGS = 4, NOINTERFACE = 5, MULTIPLESTORAGE = 6 } #if false typedef struct tagDBPARAMBINDINFO { LPOLESTR pwszDataSourceType; LPOLESTR pwszName; DBLENGTH ulParamSize; DBPARAMFLAGS dwFlags; BYTE bPrecision; BYTE bScale; } #endif #if WIN32 [StructLayoutAttribute(LayoutKind.Sequential, Pack = 2)] #else [StructLayoutAttribute(LayoutKind.Sequential, Pack = 8)] #endif internal struct tagDBPARAMBINDINFO { internal IntPtr pwszDataSourceType; internal IntPtr pwszName; internal IntPtr ulParamSize; internal Int32 dwFlags; internal Byte bPrecision; internal Byte bScale; #if DEBUG public override string ToString() { StringBuilder builder = new StringBuilder(); builder.Append("tagDBPARAMBINDINFO").Append(Environment.NewLine); if (IntPtr.Zero != pwszDataSourceType) { builder.Append("pwszDataSourceType =").Append(Marshal.PtrToStringUni(pwszDataSourceType)).Append(Environment.NewLine); } builder.Append("\tulParamSize =" + ulParamSize.ToInt64().ToString(CultureInfo.InvariantCulture)).Append(Environment.NewLine); builder.Append("\tdwFlags =0x" + dwFlags.ToString("X4", CultureInfo.InvariantCulture)).Append(Environment.NewLine); builder.Append("\tPrecision =" + bPrecision.ToString(CultureInfo.InvariantCulture)).Append(Environment.NewLine); builder.Append("\tScale =" + bScale.ToString(CultureInfo.InvariantCulture)).Append(Environment.NewLine); return builder.ToString(); } #endif } #if false typedef struct tagDBBINDING { DBORDINAL iOrdinal; DBBYTEOFFSET obValue; DBBYTEOFFSET obLength; DBBYTEOFFSET obStatus; ITypeInfo *pTypeInfo; DBOBJECT *pObject; DBBINDEXT *pBindExt; DBPART dwPart; DBMEMOWNER dwMemOwner; DBPARAMIO eParamIO; DBLENGTH cbMaxLen; DWORD dwFlags; DBTYPE wType; BYTE bPrecision; BYTE bScale; } #endif #if WIN32 [StructLayoutAttribute(LayoutKind.Sequential, Pack = 2)] #else [StructLayoutAttribute(LayoutKind.Sequential, Pack = 8)] #endif internal sealed class tagDBBINDING { internal IntPtr iOrdinal; internal IntPtr obValue; internal IntPtr obLength; internal IntPtr obStatus; internal IntPtr pTypeInfo; internal IntPtr pObject; internal IntPtr pBindExt; internal Int32 dwPart; internal Int32 dwMemOwner; internal Int32 eParamIO; internal IntPtr cbMaxLen; internal Int32 dwFlags; internal Int16 wType; internal byte bPrecision; internal byte bScale; internal tagDBBINDING() { } #if DEBUG public override string ToString() { StringBuilder builder = new StringBuilder(); builder.Append("tagDBBINDING").Append(Environment.NewLine); builder.Append("\tOrdinal =" + iOrdinal.ToInt64().ToString(CultureInfo.InvariantCulture)).Append(Environment.NewLine); builder.Append("\tValueOffset =" + obValue.ToInt64().ToString(CultureInfo.InvariantCulture)).Append(Environment.NewLine); builder.Append("\tLengthOffset=" + obLength.ToInt64().ToString(CultureInfo.InvariantCulture)).Append(Environment.NewLine); builder.Append("\tStatusOffset=" + obStatus.ToInt64().ToString(CultureInfo.InvariantCulture)).Append(Environment.NewLine); builder.Append("\tMaxLength =" + cbMaxLen.ToInt64().ToString(CultureInfo.InvariantCulture)).Append(Environment.NewLine); builder.Append("\tDB_Type =" + ODB.WLookup(wType)).Append(Environment.NewLine); builder.Append("\tPrecision =" + bPrecision.ToString(CultureInfo.InvariantCulture)).Append(Environment.NewLine); builder.Append("\tScale =" + bScale.ToString(CultureInfo.InvariantCulture)).Append(Environment.NewLine); return builder.ToString(); } #endif } #if false typedef struct tagDBCOLUMNACCESS { void *pData; DBID columnid; DBLENGTH cbDataLen; DBSTATUS dwStatus; DBLENGTH cbMaxLen; DB_DWRESERVE dwReserved; DBTYPE wType; BYTE bPrecision; BYTE bScale; } #endif #if WIN32 [StructLayoutAttribute(LayoutKind.Sequential, Pack = 2)] #else [StructLayoutAttribute(LayoutKind.Sequential, Pack = 8)] #endif internal struct tagDBCOLUMNACCESS { internal IntPtr pData; internal tagDBIDX columnid; internal IntPtr cbDataLen; internal Int32 dwStatus; internal IntPtr cbMaxLen; internal IntPtr dwReserved; internal Int16 wType; internal Byte bPrecision; internal Byte bScale; } #if false typedef struct tagDBID { /* [switch_is][switch_type] */ union { /* [case()] */ GUID guid; /* [case()] */ GUID *pguid; /* [default] */ /* Empty union arm */ } uGuid; DBKIND eKind; /* [switch_is][switch_type] */ union { /* [case()] */ LPOLESTR pwszName; /* [case()] */ ULONG ulPropid; /* [default] */ /* Empty union arm */ } uName; } #endif #if WIN32 [StructLayoutAttribute(LayoutKind.Sequential, Pack = 2)] #else [StructLayoutAttribute(LayoutKind.Sequential, Pack = 8)] #endif internal struct tagDBIDX { internal Guid uGuid; internal Int32 eKind; internal IntPtr ulPropid; } #if WIN32 [StructLayoutAttribute(LayoutKind.Sequential, Pack = 2)] #else [StructLayoutAttribute(LayoutKind.Sequential, Pack = 8)] #endif internal sealed class tagDBID { internal Guid uGuid; internal Int32 eKind; internal IntPtr ulPropid; } #if false typedef struct tagDBLITERALINFO { LPOLESTR pwszLiteralValue; LPOLESTR pwszInvalidChars; LPOLESTR pwszInvalidStartingChars; DBLITERAL lt; BOOL fSupported; ULONG cchMaxLen; } #endif #if WIN32 [StructLayoutAttribute(LayoutKind.Sequential, Pack = 2)] #else [StructLayoutAttribute(LayoutKind.Sequential, Pack = 8)] #endif sealed internal class tagDBLITERALINFO { [MarshalAs(UnmanagedType.LPWStr)] internal String pwszLiteralValue = null; [MarshalAs(UnmanagedType.LPWStr)] internal String pwszInvalidChars = null; [MarshalAs(UnmanagedType.LPWStr)] internal String pwszInvalidStartingChars = null; internal Int32 it; internal Int32 fSupported; internal Int32 cchMaxLen; internal tagDBLITERALINFO() { } } #if false typedef struct tagDBPROPSET { /* [size_is] */ DBPROP *rgProperties; ULONG cProperties; GUID guidPropertySet; } #endif #if WIN32 [StructLayoutAttribute(LayoutKind.Sequential, Pack = 2)] #else [StructLayoutAttribute(LayoutKind.Sequential, Pack = 8)] #endif sealed internal class tagDBPROPSET { internal IntPtr rgProperties; internal Int32 cProperties; internal Guid guidPropertySet; internal tagDBPROPSET() { } internal tagDBPROPSET(int propertyCount, Guid propertySet) { cProperties = propertyCount; guidPropertySet = propertySet; } } #if false typedef struct tagDBPROP { DBPROPID dwPropertyID; DBPROPOPTIONS dwOptions; DBPROPSTATUS dwStatus; DBID colid; VARIANT vValue; } #endif #if WIN32 [StructLayoutAttribute(LayoutKind.Sequential, Pack = 2)] #else [StructLayoutAttribute(LayoutKind.Sequential, Pack = 8)] #endif sealed internal class tagDBPROP { internal Int32 dwPropertyID; internal Int32 dwOptions; internal OleDbPropertyStatus dwStatus; internal tagDBIDX columnid; // Variant [MarshalAs(UnmanagedType.Struct)] internal object vValue; internal tagDBPROP() { } internal tagDBPROP(int propertyID, bool required, object value) { dwPropertyID = propertyID; dwOptions = ((required) ? ODB.DBPROPOPTIONS_REQUIRED : ODB.DBPROPOPTIONS_OPTIONAL); vValue = value; } } #if false typedef struct tagDBPARAMS { void *pData; DB_UPARAMS cParamSets; HACCESSOR hAccessor; } #endif #if WIN32 [StructLayoutAttribute(LayoutKind.Sequential, Pack = 2)] #else [StructLayoutAttribute(LayoutKind.Sequential, Pack = 8)] #endif sealed internal class tagDBPARAMS { internal IntPtr pData; internal Int32 cParamSets; internal IntPtr hAccessor; internal tagDBPARAMS() { } } #if false typedef struct tagDBCOLUMNINFO { LPOLESTR pwszName; ITypeInfo *pTypeInfo; DBORDINAL iOrdinal; DBCOLUMNFLAGS dwFlags; DBLENGTH ulColumnSize; DBTYPE wType; BYTE bPrecision; BYTE bScale; DBID columnid; } #endif #if WIN32 [StructLayoutAttribute(LayoutKind.Sequential, Pack = 2)] #else [StructLayoutAttribute(LayoutKind.Sequential, Pack = 8)] #endif sealed internal class tagDBCOLUMNINFO { [MarshalAs(UnmanagedType.LPWStr)] internal String pwszName = null; //[MarshalAs(UnmanagedType.Interface)] internal IntPtr pTypeInfo = (IntPtr) 0; internal IntPtr iOrdinal = (IntPtr) 0; internal Int32 dwFlags = 0; internal IntPtr ulColumnSize = (IntPtr) 0; internal Int16 wType = 0; internal Byte bPrecision = 0; internal Byte bScale = 0; internal tagDBIDX columnid; internal tagDBCOLUMNINFO() { } #if DEBUG public override string ToString() { StringBuilder builder = new StringBuilder(); builder.Append("tagDBCOLUMNINFO: " + Convert.ToString(pwszName, CultureInfo.InvariantCulture)).Append(Environment.NewLine); builder.Append("\t" + iOrdinal.ToInt64().ToString(CultureInfo.InvariantCulture)).Append(Environment.NewLine); builder.Append("\t" + "0x" + dwFlags.ToString("X8", CultureInfo.InvariantCulture)).Append(Environment.NewLine); builder.Append("\t" + ulColumnSize.ToInt64().ToString(CultureInfo.InvariantCulture)).Append(Environment.NewLine); builder.Append("\t" + "0x" + wType.ToString("X2", CultureInfo.InvariantCulture)).Append(Environment.NewLine); builder.Append("\t" + bPrecision.ToString(CultureInfo.InvariantCulture)).Append(Environment.NewLine); builder.Append("\t" + bScale.ToString(CultureInfo.InvariantCulture)).Append(Environment.NewLine); builder.Append("\t" + columnid.eKind.ToString(CultureInfo.InvariantCulture)).Append(Environment.NewLine); return builder.ToString(); } #endif } #if false typedef struct tagDBPROPINFOSET { /* [size_is] */ PDBPROPINFO rgPropertyInfos; ULONG cPropertyInfos; GUID guidPropertySet; } #endif #if WIN32 [StructLayoutAttribute(LayoutKind.Sequential, Pack = 2)] #else [StructLayoutAttribute(LayoutKind.Sequential, Pack = 8)] #endif sealed internal class tagDBPROPINFOSET { internal IntPtr rgPropertyInfos; internal Int32 cPropertyInfos; internal Guid guidPropertySet; internal tagDBPROPINFOSET() { } } #if false typedef struct tagDBPROPINFO { LPOLESTR pwszDescription; DBPROPID dwPropertyID; DBPROPFLAGS dwFlags; VARTYPE vtType; VARIANT vValues; } #endif #if WIN32 [StructLayoutAttribute(LayoutKind.Sequential, Pack = 2)] #else [StructLayoutAttribute(LayoutKind.Sequential, Pack = 8)] #endif sealed internal class tagDBPROPINFO { [MarshalAs(UnmanagedType.LPWStr)] internal string pwszDescription; internal Int32 dwPropertyID; internal Int32 dwFlags; internal Int16 vtType; [MarshalAs(UnmanagedType.Struct)] internal object vValue; internal tagDBPROPINFO() { } } #if false typedef struct tagDBPROPIDSET { /* [size_is] */ DBPROPID *rgPropertyIDs; ULONG cPropertyIDs; GUID guidPropertySet; } #endif #if WIN32 [StructLayoutAttribute(LayoutKind.Sequential, Pack = 2)] #else [StructLayoutAttribute(LayoutKind.Sequential, Pack = 8)] #endif internal struct tagDBPROPIDSET { internal IntPtr rgPropertyIDs; internal Int32 cPropertyIDs; internal Guid guidPropertySet; } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CodeMemberField.cs
- ReadingWritingEntityEventArgs.cs
- ScrollPattern.cs
- Object.cs
- RenderDataDrawingContext.cs
- precedingquery.cs
- PropertyGridView.cs
- SafeProcessHandle.cs
- ListBoxItemAutomationPeer.cs
- FixedTextPointer.cs
- BitmapEffectGeneralTransform.cs
- EmptyEnumerator.cs
- SemanticResultValue.cs
- CollectionView.cs
- DataGridViewCellCollection.cs
- UnicodeEncoding.cs
- RoleManagerModule.cs
- RequestQueue.cs
- CursorInteropHelper.cs
- ListViewSortEventArgs.cs
- AssertSection.cs
- RsaKeyGen.cs
- WindowsToolbar.cs
- SerialStream.cs
- PriorityQueue.cs
- SaveFileDialogDesigner.cs
- ConvertersCollection.cs
- ResXResourceSet.cs
- TransportContext.cs
- MSHTMLHost.cs
- WindowsIdentity.cs
- SeparatorAutomationPeer.cs
- OdbcDataAdapter.cs
- XmlSerializerFactory.cs
- MemoryFailPoint.cs
- WebPartZone.cs
- EventSourceCreationData.cs
- XmlResolver.cs
- ScrollItemPattern.cs
- ColorBlend.cs
- PolygonHotSpot.cs
- SQLString.cs
- GenericEnumConverter.cs
- HtmlInputFile.cs
- DbConnectionOptions.cs
- ObservableDictionary.cs
- XmlDataContract.cs
- DateTimeUtil.cs
- ColorConvertedBitmapExtension.cs
- BitmapEffect.cs
- Constraint.cs
- WebControlParameterProxy.cs
- MachineKeyConverter.cs
- MiniLockedBorderGlyph.cs
- ContentElement.cs
- HMACSHA384.cs
- WebBrowser.cs
- IPGlobalProperties.cs
- QueryAccessibilityHelpEvent.cs
- FileUtil.cs
- ProtocolsConfigurationEntry.cs
- EmptyCollection.cs
- InputScope.cs
- PropertyChangedEventArgs.cs
- ToolStripRenderer.cs
- SqlConnectionHelper.cs
- FontFamilyConverter.cs
- MarkerProperties.cs
- SapiGrammar.cs
- ExpressionsCollectionEditor.cs
- AttachedPropertyMethodSelector.cs
- RpcCryptoContext.cs
- PersonalizationStateInfo.cs
- DocumentEventArgs.cs
- ToolTipService.cs
- MSAANativeProvider.cs
- ContextMarshalException.cs
- SecondaryViewProvider.cs
- ListViewCommandEventArgs.cs
- CallbackTimeoutsElement.cs
- Util.cs
- XpsInterleavingPolicy.cs
- UnsafeNativeMethods.cs
- Quack.cs
- dbenumerator.cs
- OracleInternalConnection.cs
- MeasurementDCInfo.cs
- regiisutil.cs
- SaveFileDialog.cs
- WebPartEditorOkVerb.cs
- BufferedReceiveManager.cs
- ViewStateModeByIdAttribute.cs
- AdornerHitTestResult.cs
- SqlGenericUtil.cs
- DoubleConverter.cs
- IisTraceWebEventProvider.cs
- LicenseException.cs
- dataprotectionpermission.cs
- ErrorHandlingReceiver.cs
- ZoneButton.cs