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
- InvokeCompletedEventArgs.cs
- DataTemplateKey.cs
- SafeNativeMethods.cs
- TreeIterator.cs
- CodeSpit.cs
- BitmapCodecInfo.cs
- ProfilePropertySettingsCollection.cs
- DetailsViewInsertedEventArgs.cs
- CachedFontFamily.cs
- ServiceAuthorizationElement.cs
- SocketAddress.cs
- Transform3DCollection.cs
- WindowExtensionMethods.cs
- BitmapInitialize.cs
- SafeLocalMemHandle.cs
- IsolationInterop.cs
- objectresult_tresulttype.cs
- SqlVisitor.cs
- NestedContainer.cs
- UdpTransportSettingsElement.cs
- SapiGrammar.cs
- VerificationException.cs
- RequestQueryProcessor.cs
- EdmEntityTypeAttribute.cs
- MultiByteCodec.cs
- InputBinding.cs
- TagElement.cs
- securitycriticaldataClass.cs
- AssemblyCollection.cs
- BinaryKeyIdentifierClause.cs
- AuthenticationService.cs
- StylusPoint.cs
- BitmapEffectDrawingContent.cs
- SqlTypeConverter.cs
- CRYPTPROTECT_PROMPTSTRUCT.cs
- QuaternionAnimation.cs
- followingsibling.cs
- DynamicMethod.cs
- PauseStoryboard.cs
- XmlSchemaSearchPattern.cs
- WebPartsSection.cs
- DataSetViewSchema.cs
- WebRequestModuleElementCollection.cs
- SiteMapNodeItem.cs
- SR.cs
- TextParagraphView.cs
- StringArrayConverter.cs
- SoundPlayer.cs
- SecurityIdentifierElement.cs
- VirtualizingStackPanel.cs
- InternalControlCollection.cs
- ByteAnimation.cs
- DSASignatureDeformatter.cs
- MarkedHighlightComponent.cs
- GC.cs
- ClientConvert.cs
- PropertyBuilder.cs
- XsltQilFactory.cs
- IntSecurity.cs
- VisualStyleElement.cs
- FileDialog_Vista_Interop.cs
- ArgumentException.cs
- _ListenerRequestStream.cs
- _ListenerRequestStream.cs
- BamlWriter.cs
- InkCanvasSelection.cs
- HashUtility.cs
- ZipIORawDataFileBlock.cs
- MemberAssignmentAnalysis.cs
- CodeExpressionCollection.cs
- ServiceHostingEnvironmentSection.cs
- EncoderExceptionFallback.cs
- SocketElement.cs
- SqlAliasesReferenced.cs
- OwnerDrawPropertyBag.cs
- _SslSessionsCache.cs
- SQLByte.cs
- ImagingCache.cs
- PageStatePersister.cs
- BinHexEncoder.cs
- ToolBarPanel.cs
- DataTableTypeConverter.cs
- TabItemAutomationPeer.cs
- KeyValueSerializer.cs
- DynamicActivityTypeDescriptor.cs
- FormsAuthenticationCredentials.cs
- GroupLabel.cs
- HttpWebRequest.cs
- SendKeys.cs
- BulletedList.cs
- DataSourceViewSchemaConverter.cs
- CatalogPartCollection.cs
- NGCUIElementCollectionSerializerAsync.cs
- HttpServerUtilityWrapper.cs
- Rijndael.cs
- BitmapScalingModeValidation.cs
- PolyQuadraticBezierSegmentFigureLogic.cs
- UserInitiatedNavigationPermission.cs
- StubHelpers.cs
- MembershipPasswordException.cs