Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / MS / Internal / IO / Packaging / EncryptedPackageFilter.cs / 1305600 / EncryptedPackageFilter.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: // Implements indexing filter for EncryptedPackageEnvelope. // Invoked by XpsFilter if the file/stream being filtered // is an EncryptedPackageEnvelope. // // History: // 07/18/2005: ArindamB: Initial implementation //--------------------------------------------------------------------------- using System; using System.Windows; using System.Runtime.InteropServices; using System.IO.Packaging; using MS.Internal.Interop; namespace MS.Internal.IO.Packaging { #region EncryptedPackageFilter ////// Implements IFilter methods to support indexing on EncryptedPackageEnvelope. /// internal class EncryptedPackageFilter : IFilter { #region Constructor ////// Constructor. /// /// EncryptedPackageEnvelope to filter on internal EncryptedPackageFilter(EncryptedPackageEnvelope encryptedPackage) { if (encryptedPackage == null) { throw new ArgumentNullException("encryptedPackage"); } // // Since CorePropertiesFilter is implemented as // a managed filter (supports IManagedFilter interface), // IndexingFilterMarshaler is used to get IFilter interface out of it. // _filter = new IndexingFilterMarshaler( new CorePropertiesFilter( encryptedPackage.PackageProperties )); } #endregion Constructor #region IFilter methods ////// Initialzes the session for this filter. /// /// usage flags /// number of elements in aAttributes array /// array of FULLPROPSPEC structs to restrict responses ///IFILTER_FLAGS_NONE. Return value is effectively ignored by the caller. public IFILTER_FLAGS Init( [In] IFILTER_INIT grfFlags, [In] uint cAttributes, [In, MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 1)] FULLPROPSPEC[] aAttributes) { return _filter.Init(grfFlags, cAttributes, aAttributes); } ////// Returns description of the next chunk. /// ///Chunk descriptor public STAT_CHUNK GetChunk() { return _filter.GetChunk(); } ////// Gets text content corresponding to current chunk. /// /// /// ///Not supported in indexing of core properties. public void GetText(ref uint bufCharacterCount, IntPtr pBuffer) { throw new COMException(SR.Get(SRID.FilterGetTextNotSupported), (int)FilterErrorCode.FILTER_E_NO_TEXT); } ////// Gets the property value corresponding to current chunk. /// ///property value public IntPtr GetValue() { return _filter.GetValue(); } ////// Retrieves an interface representing the specified portion of the object. /// /// /// ///Not implemented. Reserved for future use. public IntPtr BindRegion([In] FILTERREGION origPos, [In] ref Guid riid) { throw new NotImplementedException(SR.Get(SRID.FilterBindRegionNotImplemented)); } #endregion IFilter methods #region Fields ////// Only filtering that is supported on EncryptedPackageEnvelope /// is of core properties. This points to EncryptedPackageCorePropertiesFilter /// wrapped by FilterMarshaler. /// private IFilter _filter = null; #endregion Fields } #endregion EncryptedPackageFilter } // 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
- ScriptComponentDescriptor.cs
- DefaultEventAttribute.cs
- Comparer.cs
- smtppermission.cs
- Thickness.cs
- exports.cs
- AnonymousIdentificationSection.cs
- DelegatingTypeDescriptionProvider.cs
- BitmapScalingModeValidation.cs
- TCPListener.cs
- HijriCalendar.cs
- ToolStripDropDownButton.cs
- AnnotationHighlightLayer.cs
- XmlSchemaElement.cs
- FrameworkObject.cs
- TextBlockAutomationPeer.cs
- COM2ComponentEditor.cs
- PathSegmentCollection.cs
- StagingAreaInputItem.cs
- SecurityToken.cs
- WaitHandle.cs
- PropertyChangedEventArgs.cs
- BrushConverter.cs
- RouteParser.cs
- ObjectDataSourceSelectingEventArgs.cs
- _TimerThread.cs
- ListViewContainer.cs
- ApplicationException.cs
- HuffmanTree.cs
- UnsafeNativeMethods.cs
- SHA1CryptoServiceProvider.cs
- ClientEventManager.cs
- CurrentChangedEventManager.cs
- Clause.cs
- CodeIdentifiers.cs
- MLangCodePageEncoding.cs
- Int16KeyFrameCollection.cs
- ContentType.cs
- HTMLTextWriter.cs
- ReverseInheritProperty.cs
- ImagingCache.cs
- DashStyle.cs
- DateTimeConverter.cs
- ColumnMapTranslator.cs
- ReverseInheritProperty.cs
- StyleModeStack.cs
- AddInServer.cs
- SerializationAttributes.cs
- VirtualizingStackPanel.cs
- ListViewCommandEventArgs.cs
- DockAndAnchorLayout.cs
- TableItemPattern.cs
- GestureRecognitionResult.cs
- DomNameTable.cs
- WebHttpSecurity.cs
- DataTemplate.cs
- EncodingTable.cs
- Vector3DAnimationBase.cs
- ReadWriteSpinLock.cs
- sqlmetadatafactory.cs
- InputLanguageManager.cs
- SqlConnectionPoolProviderInfo.cs
- PostBackOptions.cs
- GeometryHitTestResult.cs
- HttpResponseHeader.cs
- XmlSignatureProperties.cs
- SectionInput.cs
- MimeTypeAttribute.cs
- ExtentCqlBlock.cs
- DateTimeConverter2.cs
- UnionQueryOperator.cs
- ColorConvertedBitmap.cs
- ZipPackage.cs
- WebEvents.cs
- WebEventTraceProvider.cs
- ListViewContainer.cs
- UnSafeCharBuffer.cs
- ByteRangeDownloader.cs
- IPEndPoint.cs
- RootContext.cs
- InputGestureCollection.cs
- TemplateControl.cs
- ReflectionServiceProvider.cs
- CharacterMetricsDictionary.cs
- DockProviderWrapper.cs
- PropertyEmitter.cs
- ProbeMatchesMessage11.cs
- ParseHttpDate.cs
- RegexRunner.cs
- BuilderPropertyEntry.cs
- HtmlInputHidden.cs
- XmlSiteMapProvider.cs
- WSDualHttpBindingCollectionElement.cs
- InstanceData.cs
- XpsManager.cs
- uribuilder.cs
- InternalEnumValidatorAttribute.cs
- ScrollProviderWrapper.cs
- XPathDocument.cs
- NavigationWindow.cs