Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / WinForms / Managed / System / WinForms / ComponentModel / COM2Interop / OleStrCAMarshaler.cs / 1 / OleStrCAMarshaler.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms.ComponentModel.Com2Interop { using System.Runtime.InteropServices; using System.ComponentModel; using System.Diagnostics; using System; ////// /// This class performs marshaling on a CALPOLESTR struct given /// from native code. /// internal class OleStrCAMarshaler: BaseCAMarshaler { public OleStrCAMarshaler(NativeMethods.CA_STRUCT caAddr) : base(caAddr) { } ////// /// Returns the type of item this marshaler will /// return in the items array. In this case, the type is string. /// public override Type ItemType { get { return typeof(string); } } protected override Array CreateArray() { return new string[Count]; } ////// /// Override this member to perform marshalling of a single item /// given it's native address. /// protected override object GetItemFromAddress(IntPtr addr) { string item = Marshal.PtrToStringUni(addr); // free the memory Marshal.FreeCoTaskMem(addr); return item; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- StylusButton.cs
- TextRange.cs
- HttpProfileBase.cs
- SessionPageStatePersister.cs
- EncodingTable.cs
- PersonalizationStateInfo.cs
- DbProviderFactories.cs
- ColorAnimationBase.cs
- FixedSOMImage.cs
- BooleanSwitch.cs
- ScrollableControl.cs
- XmlPreloadedResolver.cs
- ConnectionProviderAttribute.cs
- ClientSettingsStore.cs
- OdbcParameterCollection.cs
- SmiContext.cs
- DataControlCommands.cs
- XmlLinkedNode.cs
- RsaSecurityToken.cs
- ConfigXmlWhitespace.cs
- ButtonChrome.cs
- RepeatButton.cs
- EndpointDiscoveryElement.cs
- DataSetUtil.cs
- Math.cs
- GuidelineSet.cs
- DataSourceCacheDurationConverter.cs
- InitializeCorrelation.cs
- TimelineClockCollection.cs
- Form.cs
- LocalValueEnumerator.cs
- GlyphingCache.cs
- StatusBarDesigner.cs
- SpinWait.cs
- ClientSettingsProvider.cs
- WinEventWrap.cs
- XPathArrayIterator.cs
- ReflectTypeDescriptionProvider.cs
- ApplicationDirectory.cs
- DataSourceControl.cs
- OrderToken.cs
- HiddenField.cs
- FlowDocumentView.cs
- ControlBuilder.cs
- ToolBarPanel.cs
- NetTcpBinding.cs
- MenuItemBindingCollection.cs
- shaperfactoryquerycachekey.cs
- TextEmbeddedObject.cs
- ClientSettingsStore.cs
- CanonicalFontFamilyReference.cs
- PanningMessageFilter.cs
- AnchoredBlock.cs
- DateTimeHelper.cs
- AssemblyName.cs
- PageOutputQuality.cs
- XPathDescendantIterator.cs
- ServiceRoute.cs
- DataGridViewComboBoxColumn.cs
- SecurityCredentialsManager.cs
- Util.cs
- XamlToRtfParser.cs
- WebPartConnectionsCancelVerb.cs
- ListView.cs
- ChangeNode.cs
- MdbDataFileEditor.cs
- DockProviderWrapper.cs
- MSAAWinEventWrap.cs
- SectionVisual.cs
- BaseComponentEditor.cs
- ItemType.cs
- PerfProviderCollection.cs
- TypedTableBaseExtensions.cs
- MessageEnumerator.cs
- GridViewItemAutomationPeer.cs
- ResourcesChangeInfo.cs
- XmlWrappingWriter.cs
- SynchronizingStream.cs
- MailWebEventProvider.cs
- AnnouncementSendsAsyncResult.cs
- XmlFileEditor.cs
- DataRelation.cs
- TransactionManagerProxy.cs
- ChannelServices.cs
- XmlWriterSettings.cs
- MulticastDelegate.cs
- SchemaAttDef.cs
- DataGridViewColumnCollectionDialog.cs
- ToolStripPanelRow.cs
- EntityDataSourceEntityTypeFilterItem.cs
- DuplicateDetector.cs
- OleDbCommand.cs
- TextEndOfSegment.cs
- WizardStepBase.cs
- XPathNavigatorKeyComparer.cs
- WebPartActionVerb.cs
- StringCollection.cs
- DataContractSerializerOperationFormatter.cs
- SQLGuidStorage.cs
- InvalidPropValue.cs