Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Framework / MS / Internal / IO / Packaging / EncryptedPackageFilter.cs / 1 / 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: [....]: 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
- TableRowGroup.cs
- DoWhile.cs
- x509store.cs
- DashStyle.cs
- LocatorPartList.cs
- M3DUtil.cs
- HttpCookie.cs
- ProtocolProfile.cs
- DelegatingTypeDescriptionProvider.cs
- Propagator.ExtentPlaceholderCreator.cs
- entitydatasourceentitysetnameconverter.cs
- OracleCommandSet.cs
- ValueTable.cs
- HttpRequestBase.cs
- WindowsGraphicsCacheManager.cs
- DataColumn.cs
- HostedBindingBehavior.cs
- ResourceAttributes.cs
- AspNetSynchronizationContext.cs
- HebrewCalendar.cs
- DataTableNewRowEvent.cs
- DataGridColumnHeaderItemAutomationPeer.cs
- ContextQuery.cs
- TextElement.cs
- OleDbPermission.cs
- Size.cs
- AsnEncodedData.cs
- TabPage.cs
- Axis.cs
- PageCatalogPart.cs
- HttpRuntimeSection.cs
- SqlCacheDependencyDatabaseCollection.cs
- DbResourceAllocator.cs
- NestedContainer.cs
- OleDbErrorCollection.cs
- ProxyGenerator.cs
- VisualBasicImportReference.cs
- PropertyEmitter.cs
- ByteRangeDownloader.cs
- ZeroOpNode.cs
- Substitution.cs
- ReadOnlyCollection.cs
- TdsParserSafeHandles.cs
- WindowsSlider.cs
- DataGridViewCellMouseEventArgs.cs
- XDRSchema.cs
- CommandExpr.cs
- Permission.cs
- TextCompositionManager.cs
- RectangleConverter.cs
- InstancePersistenceException.cs
- AppDomainFactory.cs
- WebPartDisplayModeCancelEventArgs.cs
- CalendarDay.cs
- UpdateCommand.cs
- IResourceProvider.cs
- CaseInsensitiveOrdinalStringComparer.cs
- CommandLineParser.cs
- AgileSafeNativeMemoryHandle.cs
- ClientProxyGenerator.cs
- Marshal.cs
- XmlUnspecifiedAttribute.cs
- ClientCredentialsSecurityTokenManager.cs
- AxDesigner.cs
- DataComponentGenerator.cs
- UnsafeNativeMethodsTablet.cs
- Transform3DCollection.cs
- GradientBrush.cs
- AssemblyBuilderData.cs
- HintTextConverter.cs
- StorageAssociationSetMapping.cs
- ErrorProvider.cs
- DeferredReference.cs
- RawStylusInputCustomData.cs
- BorderSidesEditor.cs
- PermissionToken.cs
- OdbcPermission.cs
- ScriptingSectionGroup.cs
- CompilerResults.cs
- PopupEventArgs.cs
- UncommonField.cs
- WebPartConnectionsEventArgs.cs
- AddInIpcChannel.cs
- XmlCDATASection.cs
- ExcludeFromCodeCoverageAttribute.cs
- EventDriven.cs
- HttpServerVarsCollection.cs
- EncoderParameters.cs
- Polyline.cs
- DataFormat.cs
- PersonalizationAdministration.cs
- XmlSchemaType.cs
- OracleColumn.cs
- KeyInterop.cs
- SymbolResolver.cs
- XsltConvert.cs
- Rect3DConverter.cs
- Point4DValueSerializer.cs
- ListViewDeleteEventArgs.cs
- TableRowCollection.cs