Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / Configuration / StrongNameUtility.cs / 1305376 / StrongNameUtility.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Configuration { using System.Diagnostics; using System.IO; using System.Runtime.InteropServices; using System.Security.Permissions; using Microsoft.Runtime.Hosting; internal class StrongNameUtility { // Help class shouldn't be instantiated. private StrongNameUtility() { } internal static bool GenerateStrongNameFile(string filename) { // variables that hold the unmanaged key IntPtr keyBlob = IntPtr.Zero; int generatedSize = 0; // create the key bool createdKey = StrongNameHelpers.StrongNameKeyGen(null, 0 /*No flags. 1 is to save the key in the key container */, out keyBlob, out generatedSize); // if there was a problem, translate it and report it if (!createdKey || keyBlob == IntPtr.Zero) { throw Marshal.GetExceptionForHR(StrongNameHelpers.StrongNameErrorInfo()); } try { Debug.Assert(keyBlob != IntPtr.Zero); // make sure the key size makes sense Debug.Assert(generatedSize > 0 && generatedSize <= Int32.MaxValue); if (generatedSize <= 0 || generatedSize > Int32.MaxValue) { throw new InvalidOperationException(SR.GetString(SR.Browser_InvalidStrongNameKey)); } // get the key into managed memory byte[] key = new byte[generatedSize]; Marshal.Copy(keyBlob, key, 0, (int)generatedSize); // write the key to the specified file using (FileStream snkStream = new FileStream(filename, FileMode.Create, FileAccess.Write)) { using (BinaryWriter snkWriter = new BinaryWriter(snkStream)) { snkWriter.Write(key); } } } finally { // release the unmanaged memory the key resides in if (keyBlob != IntPtr.Zero) { StrongNameHelpers.StrongNameFreeBuffer(keyBlob); } } return true; } } } // 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
- ECDsaCng.cs
- DataViewManagerListItemTypeDescriptor.cs
- SqlUDTStorage.cs
- Drawing.cs
- HttpStaticObjectsCollectionWrapper.cs
- DataGridPageChangedEventArgs.cs
- SystemWebCachingSectionGroup.cs
- Internal.cs
- BufferedStream.cs
- SecurityRuntime.cs
- IteratorFilter.cs
- RetrieveVirtualItemEventArgs.cs
- PersonalizationProviderHelper.cs
- DrawingGroupDrawingContext.cs
- GradientStopCollection.cs
- CodeTypeMemberCollection.cs
- BamlRecordHelper.cs
- AssemblySettingAttributes.cs
- FormsAuthenticationTicket.cs
- OleDbTransaction.cs
- QuaternionAnimation.cs
- cookiecollection.cs
- CachedFontFace.cs
- AliasExpr.cs
- Transform.cs
- ProfileModule.cs
- RealizationContext.cs
- ClientSettingsStore.cs
- SecurityRequiresReviewAttribute.cs
- DataTableClearEvent.cs
- OracleInfoMessageEventArgs.cs
- GenericEnumConverter.cs
- NullableDecimalSumAggregationOperator.cs
- StringValidatorAttribute.cs
- QilFactory.cs
- TemplatePartAttribute.cs
- View.cs
- ItemsChangedEventArgs.cs
- XamlWrappingReader.cs
- ActiveXHelper.cs
- CapabilitiesAssignment.cs
- ZipIOCentralDirectoryDigitalSignature.cs
- CorrelationTokenInvalidatedHandler.cs
- IteratorAsyncResult.cs
- XmlCodeExporter.cs
- BoundColumn.cs
- ToolStripRendererSwitcher.cs
- SecurityManager.cs
- CollectionViewGroupRoot.cs
- CodeAttachEventStatement.cs
- QueryContinueDragEvent.cs
- SupportsEventValidationAttribute.cs
- ValidationPropertyAttribute.cs
- XamlStackWriter.cs
- DataReaderContainer.cs
- GeometryDrawing.cs
- ReflectionTypeLoadException.cs
- ExpressionBuilderCollection.cs
- MetaModel.cs
- XmlTextReaderImpl.cs
- ISFClipboardData.cs
- LocalizationParserHooks.cs
- StringKeyFrameCollection.cs
- ChannelBinding.cs
- SplineQuaternionKeyFrame.cs
- ObjectKeyFrameCollection.cs
- ObjectDataSourceStatusEventArgs.cs
- HuffCodec.cs
- DataGridViewCellLinkedList.cs
- FormViewCommandEventArgs.cs
- Match.cs
- ListBox.cs
- CharAnimationBase.cs
- AttributeAction.cs
- LinkLabelLinkClickedEvent.cs
- ChannelFactoryRefCache.cs
- WpfPayload.cs
- ManagementEventArgs.cs
- NavigationService.cs
- messageonlyhwndwrapper.cs
- IBuiltInEvidence.cs
- Point4D.cs
- ObjectStateEntry.cs
- DecimalStorage.cs
- RoleManagerModule.cs
- Style.cs
- RedirectionProxy.cs
- JsonXmlDataContract.cs
- RangeValidator.cs
- RunWorkerCompletedEventArgs.cs
- MetaTableHelper.cs
- StatusBar.cs
- OdbcError.cs
- GuidelineSet.cs
- WebPartConnectionCollection.cs
- UniqueConstraint.cs
- ContextMarshalException.cs
- ElementHost.cs
- TextDecorationUnitValidation.cs
- Parsers.cs