Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Services / Messaging / System / Messaging / Interop / Columns.cs / 1305376 / Columns.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Messaging.Interop { using System.Runtime.InteropServices; using System.Diagnostics; using System; using System.ComponentModel; using System.Globalization; //for CultureInfo using Microsoft.Win32; internal class Columns { private int maxCount; private MQCOLUMNSET columnSet = new MQCOLUMNSET(); public Columns(int maxCount) { this.maxCount = maxCount; this.columnSet.columnIdentifiers = Marshal.AllocHGlobal(maxCount * 4); this.columnSet.columnCount = 0; } public virtual void AddColumnId(int columnId) { lock(this) { if (this.columnSet.columnCount >= this.maxCount) throw new InvalidOperationException(Res.GetString(Res.TooManyColumns, this.maxCount.ToString(CultureInfo.CurrentCulture))); ++ this.columnSet.columnCount; this.columnSet.SetId(columnId, this.columnSet.columnCount - 1); } } public virtual MQCOLUMNSET GetColumnsRef() { return this.columnSet; } [StructLayout(LayoutKind.Sequential)] public class MQCOLUMNSET{ public int columnCount; [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Reliability", "CA2006:UseSafeHandleToEncapsulateNativeResources")] public IntPtr columnIdentifiers; ~MQCOLUMNSET() { if (this.columnIdentifiers != (IntPtr)0) { Marshal.FreeHGlobal(this.columnIdentifiers); this.columnIdentifiers = (IntPtr)0; } } public virtual void SetId(int columnId, int index) { Marshal.WriteInt32((IntPtr)((long)this.columnIdentifiers + (index * 4)), columnId); } } } } // 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
- CombinedGeometry.cs
- VisualStateManager.cs
- BoolExpressionVisitors.cs
- WindowsRichEditRange.cs
- XPathNodeIterator.cs
- SystemInformation.cs
- ScaleTransform3D.cs
- NegationPusher.cs
- PerformanceCounterPermissionEntry.cs
- XmlDeclaration.cs
- GenerateTemporaryTargetAssembly.cs
- FormClosingEvent.cs
- DiffuseMaterial.cs
- LayoutDump.cs
- ColorMatrix.cs
- CategoryList.cs
- RegexCode.cs
- ServicePointManagerElement.cs
- PKCS1MaskGenerationMethod.cs
- Rotation3DAnimationBase.cs
- GifBitmapDecoder.cs
- OdbcEnvironmentHandle.cs
- TimeSpanSecondsConverter.cs
- XmlSchemaChoice.cs
- FileUtil.cs
- DataRecordInfo.cs
- WebBrowserPermission.cs
- ResourceContainer.cs
- ImageDrawing.cs
- StringExpressionSet.cs
- InvalidEnumArgumentException.cs
- DataGridViewComboBoxColumn.cs
- Int16KeyFrameCollection.cs
- MultiPropertyDescriptorGridEntry.cs
- IncrementalReadDecoders.cs
- SqlSupersetValidator.cs
- Int32CollectionValueSerializer.cs
- RijndaelManaged.cs
- IPAddress.cs
- XmlDocumentType.cs
- StringReader.cs
- Thread.cs
- SafeReadContext.cs
- SubpageParaClient.cs
- HttpResponseHeader.cs
- XamlTreeBuilderBamlRecordWriter.cs
- IndexedString.cs
- ValidationSummary.cs
- MessageHeaderDescription.cs
- externdll.cs
- ConfigurationElementCollection.cs
- WorkflowInstanceQuery.cs
- WizardDesigner.cs
- XmlSchemaAttributeGroup.cs
- OrderedDictionaryStateHelper.cs
- ViewUtilities.cs
- DiagnosticTrace.cs
- MediaCommands.cs
- WebScriptMetadataMessageEncoderFactory.cs
- AttachedPropertyBrowsableAttribute.cs
- TransformPattern.cs
- StickyNoteHelper.cs
- manifestimages.cs
- DbDataReader.cs
- SafeNativeMethods.cs
- ApplicationActivator.cs
- SystemWebSectionGroup.cs
- WorkflowRuntimeService.cs
- MethodBuilderInstantiation.cs
- Axis.cs
- Attributes.cs
- DataConnectionHelper.cs
- HashCodeCombiner.cs
- UInt64Converter.cs
- TemplatedControlDesigner.cs
- ByteStreamMessageEncoderFactory.cs
- CompilerErrorCollection.cs
- DropShadowBitmapEffect.cs
- SqlCacheDependencySection.cs
- DataBoundControlParameterTarget.cs
- Nodes.cs
- Clipboard.cs
- SimpleHandlerFactory.cs
- ToolStripPanelCell.cs
- LocatorBase.cs
- DocumentViewerAutomationPeer.cs
- AspNetSynchronizationContext.cs
- ConnectionPoint.cs
- _HeaderInfo.cs
- LinqExpressionNormalizer.cs
- ImageAnimator.cs
- AvTraceDetails.cs
- SortDescriptionCollection.cs
- CodeFieldReferenceExpression.cs
- smtppermission.cs
- EditorOptionAttribute.cs
- Rect3D.cs
- DictionaryBase.cs
- ApplicationBuildProvider.cs
- SqlTriggerAttribute.cs