Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Shared / MS / Internal / Ink / Native.cs / 1 / Native.cs
using System; using System.Security; using System.Runtime.InteropServices; namespace MS.Internal.Ink { internal static class Native { ////// Initialize the constants /// ////// Critical: Critical as this code invokes Marshal.SizeOf which uses LinkDemand for UnmanagedCode permission. /// TreatAsSafe: The method doesn't take any user inputs. It only pre-computes the size of our internal types. /// [SecurityCritical, SecurityTreatAsSafe] static Native() { // NOTICE-2005/10/14-[....], // Make sure those lengths are indepentent from the 32bit or 64bit platform. Otherwise it could // break the ISF format. SizeOfInt = (uint)Marshal.SizeOf(typeof(int)); SizeOfUInt = (uint)Marshal.SizeOf(typeof(uint)); SizeOfUShort = (uint)Marshal.SizeOf(typeof(ushort)); SizeOfByte = (uint)Marshal.SizeOf(typeof(byte)); SizeOfFloat = (uint)Marshal.SizeOf(typeof(float)); SizeOfDouble = (uint)Marshal.SizeOf(typeof(double)); SizeOfGuid = (uint)Marshal.SizeOf(typeof(Guid)); SizeOfDecimal = (uint)Marshal.SizeOf(typeof(decimal)); } internal static readonly uint SizeOfInt; // Size of an int internal static readonly uint SizeOfUInt; // Size of an unsigned int internal static readonly uint SizeOfUShort; // Size of an unsigned short internal static readonly uint SizeOfByte; // Size of a byte internal static readonly uint SizeOfFloat; // Size of a float internal static readonly uint SizeOfDouble; // Size of a double internal static readonly uint SizeOfGuid; // Size of a GUID internal static readonly uint SizeOfDecimal; // Size of a VB-style Decimal internal const int BitsPerByte = 8; // number of bits in a byte internal const int BitsPerShort = 16; // number of bits in one short - 2 bytes internal const int BitsPerInt = 32; // number of bits in one integer - 4 bytes internal const int BitsPerLong = 64; // number of bits in one long - 8 bytes // since casting from floats have mantisaa components, // casts from float to int are not constrained by // Int32.MaxValue, but by the maximum float value // whose mantissa component is still within range // of an integer. Anything larger will cause an overflow. internal const int MaxFloatToIntValue = 2147483584 - 1; // 2.14748e+009 } } // 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
- loginstatus.cs
- RoleManagerModule.cs
- ListenerAdaptersInstallComponent.cs
- SystemWebExtensionsSectionGroup.cs
- DWriteFactory.cs
- CapacityStreamGeometryContext.cs
- RepeaterItemEventArgs.cs
- ConfigurationElementCollection.cs
- SendParametersContent.cs
- CheckoutException.cs
- ActiveDocumentEvent.cs
- ForEachAction.cs
- PingReply.cs
- SqlProfileProvider.cs
- ArrayWithOffset.cs
- MemoryPressure.cs
- CriticalHandle.cs
- BitmapCache.cs
- CacheMemory.cs
- ExtensionFile.cs
- DataServiceRequestException.cs
- COSERVERINFO.cs
- LogWriteRestartAreaState.cs
- RequestFactory.cs
- TextSelection.cs
- UmAlQuraCalendar.cs
- SystemIPv4InterfaceProperties.cs
- StrokeNode.cs
- D3DImage.cs
- GeneralTransformCollection.cs
- rsa.cs
- InplaceBitmapMetadataWriter.cs
- ComUdtElementCollection.cs
- SynchronizedRandom.cs
- NavigateUrlConverter.cs
- mediaeventargs.cs
- documentation.cs
- SystemIPInterfaceStatistics.cs
- IIS7ConfigurationLoader.cs
- Brushes.cs
- precedingsibling.cs
- ContentDisposition.cs
- ConstructorExpr.cs
- ValidationSettings.cs
- XmlIgnoreAttribute.cs
- MetadataUtil.cs
- CreateUserErrorEventArgs.cs
- UTF32Encoding.cs
- BaseCAMarshaler.cs
- BinaryObjectInfo.cs
- WpfKnownType.cs
- EventManager.cs
- PropertyEmitter.cs
- SrgsRule.cs
- CrossContextChannel.cs
- FormattedTextSymbols.cs
- CatalogPart.cs
- MsmqPoisonMessageException.cs
- WebPartEditorOkVerb.cs
- MetaTableHelper.cs
- IdentityReference.cs
- TextChange.cs
- RepeatBehaviorConverter.cs
- DataGridViewControlCollection.cs
- DocumentPaginator.cs
- DataAccessor.cs
- PeerPresenceInfo.cs
- XamlReaderConstants.cs
- IndentTextWriter.cs
- DataTableCollection.cs
- AssemblyBuilder.cs
- CharacterShapingProperties.cs
- RestHandlerFactory.cs
- CompModSwitches.cs
- TokenBasedSetEnumerator.cs
- XPathScanner.cs
- DelegatedStream.cs
- DataGridViewCellParsingEventArgs.cs
- SurrogateSelector.cs
- ResourcePermissionBase.cs
- URLIdentityPermission.cs
- StylusButtonCollection.cs
- ThemeableAttribute.cs
- FormParameter.cs
- CursorInteropHelper.cs
- DataControlFieldTypeEditor.cs
- brushes.cs
- OperatingSystem.cs
- ContentPlaceHolder.cs
- loginstatus.cs
- Timeline.cs
- XmlNodeChangedEventManager.cs
- ConfigurationPermission.cs
- SqlCommand.cs
- Documentation.cs
- ToolboxBitmapAttribute.cs
- BufferedGraphicsContext.cs
- CounterSampleCalculator.cs
- ButtonChrome.cs
- SendSecurityHeaderElementContainer.cs