Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / clr / src / BCL / System / OperatingSystem.cs / 1 / OperatingSystem.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================ ** ** Class: OperatingSystem ** ** ** Purpose: ** ** ===========================================================*/ namespace System { using System.Runtime.Serialization; using System.Globalization; using System.Security.Permissions; using System.Runtime.InteropServices; [ComVisible(true)] [Serializable()] public sealed class OperatingSystem : ICloneable , ISerializable { private Version _version; private PlatformID _platform; private string _servicePack; private string _versionString; private OperatingSystem() { } public OperatingSystem(PlatformID platform, Version version) : this(platform, version, null) { } internal OperatingSystem(PlatformID platform, Version version, string servicePack) { if( platform < PlatformID.Win32S || platform > PlatformID.Unix) { throw new ArgumentException( String.Format(CultureInfo.CurrentCulture, Environment.GetResourceString("Arg_EnumIllegalVal"), (int)platform), "platform"); } if ((Object) version == null) throw new ArgumentNullException("version"); _platform = platform; _version = (Version) version.Clone(); _servicePack = servicePack; } private OperatingSystem(SerializationInfo info, StreamingContext context) { SerializationInfoEnumerator enumerator = info.GetEnumerator(); while( enumerator.MoveNext()) { switch( enumerator.Name) { case "_version": _version = (Version) info.GetValue("_version", typeof(Version)); break; case "_platform": _platform = (PlatformID) info.GetValue("_platform", typeof(PlatformID)); break; case "_servicePack": _servicePack = info.GetString("_servicePack"); break; } } if (_version == null ) { throw new SerializationException(Environment.GetResourceString("Serialization_MissField", "_version")); } } [SecurityPermissionAttribute(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.SerializationFormatter)] public void GetObjectData(SerializationInfo info, StreamingContext context) { if( info == null ) { throw new ArgumentNullException("info"); } info.AddValue("_version", _version); info.AddValue("_platform", _platform); info.AddValue("_servicePack", _servicePack); } public PlatformID Platform { get { return _platform; } } public string ServicePack { get { if( _servicePack == null) { return string.Empty; } return _servicePack; } } public Version Version { get { return _version; } } public Object Clone() { return new OperatingSystem(_platform, _version, _servicePack ); } public override String ToString() { return VersionString; } public String VersionString { get { if(_versionString != null) { return _versionString; } String os; if (_platform == PlatformID.Win32NT) os = "Microsoft Windows NT "; else if (_platform == PlatformID.Win32Windows) { if ((_version.Major > 4) || ((_version.Major == 4) && (_version.Minor > 0))) os = "Microsoft Windows 98 "; else os = "Microsoft Windows 95 "; } else if (_platform == PlatformID.Win32S) os = "Microsoft Win32S "; else if (_platform == PlatformID.WinCE) os = "Microsoft Windows CE "; else os = ""; if( String.IsNullOrEmpty(_servicePack)) { _versionString = os + _version.ToString(); } else { _versionString = os + _version.ToString(3) + " " + _servicePack; } return _versionString; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================ ** ** Class: OperatingSystem ** ** ** Purpose: ** ** ===========================================================*/ namespace System { using System.Runtime.Serialization; using System.Globalization; using System.Security.Permissions; using System.Runtime.InteropServices; [ComVisible(true)] [Serializable()] public sealed class OperatingSystem : ICloneable , ISerializable { private Version _version; private PlatformID _platform; private string _servicePack; private string _versionString; private OperatingSystem() { } public OperatingSystem(PlatformID platform, Version version) : this(platform, version, null) { } internal OperatingSystem(PlatformID platform, Version version, string servicePack) { if( platform < PlatformID.Win32S || platform > PlatformID.Unix) { throw new ArgumentException( String.Format(CultureInfo.CurrentCulture, Environment.GetResourceString("Arg_EnumIllegalVal"), (int)platform), "platform"); } if ((Object) version == null) throw new ArgumentNullException("version"); _platform = platform; _version = (Version) version.Clone(); _servicePack = servicePack; } private OperatingSystem(SerializationInfo info, StreamingContext context) { SerializationInfoEnumerator enumerator = info.GetEnumerator(); while( enumerator.MoveNext()) { switch( enumerator.Name) { case "_version": _version = (Version) info.GetValue("_version", typeof(Version)); break; case "_platform": _platform = (PlatformID) info.GetValue("_platform", typeof(PlatformID)); break; case "_servicePack": _servicePack = info.GetString("_servicePack"); break; } } if (_version == null ) { throw new SerializationException(Environment.GetResourceString("Serialization_MissField", "_version")); } } [SecurityPermissionAttribute(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.SerializationFormatter)] public void GetObjectData(SerializationInfo info, StreamingContext context) { if( info == null ) { throw new ArgumentNullException("info"); } info.AddValue("_version", _version); info.AddValue("_platform", _platform); info.AddValue("_servicePack", _servicePack); } public PlatformID Platform { get { return _platform; } } public string ServicePack { get { if( _servicePack == null) { return string.Empty; } return _servicePack; } } public Version Version { get { return _version; } } public Object Clone() { return new OperatingSystem(_platform, _version, _servicePack ); } public override String ToString() { return VersionString; } public String VersionString { get { if(_versionString != null) { return _versionString; } String os; if (_platform == PlatformID.Win32NT) os = "Microsoft Windows NT "; else if (_platform == PlatformID.Win32Windows) { if ((_version.Major > 4) || ((_version.Major == 4) && (_version.Minor > 0))) os = "Microsoft Windows 98 "; else os = "Microsoft Windows 95 "; } else if (_platform == PlatformID.Win32S) os = "Microsoft Win32S "; else if (_platform == PlatformID.WinCE) os = "Microsoft Windows CE "; else os = " "; if( String.IsNullOrEmpty(_servicePack)) { _versionString = os + _version.ToString(); } else { _versionString = os + _version.ToString(3) + " " + _servicePack; } return _versionString; } } } } // 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
- _SslStream.cs
- WebPartTransformerAttribute.cs
- ResXResourceReader.cs
- XmlSchemaSimpleType.cs
- PersonalizationProviderHelper.cs
- CodeExporter.cs
- StreamResourceInfo.cs
- StorageComplexTypeMapping.cs
- MasterPageCodeDomTreeGenerator.cs
- ConvertEvent.cs
- HostingPreferredMapPath.cs
- RegisteredDisposeScript.cs
- AttributedMetaModel.cs
- DiscoveryReferences.cs
- IndentedWriter.cs
- CodeComment.cs
- MgmtConfigurationRecord.cs
- SerializableTypeCodeDomSerializer.cs
- SafeThreadHandle.cs
- ClusterRegistryConfigurationProvider.cs
- Variant.cs
- GridErrorDlg.cs
- MULTI_QI.cs
- RequestTimeoutManager.cs
- SystemWebCachingSectionGroup.cs
- StyleHelper.cs
- JoinGraph.cs
- TreeNodeBinding.cs
- CRYPTPROTECT_PROMPTSTRUCT.cs
- SuppressMessageAttribute.cs
- ValidatorUtils.cs
- Util.cs
- CapabilitiesState.cs
- IgnoreSectionHandler.cs
- CompilerError.cs
- TreeNodeStyle.cs
- DBCommandBuilder.cs
- PropertyDescriptorCollection.cs
- QueryRewriter.cs
- DefaultValueAttribute.cs
- RuntimeConfigLKG.cs
- ReadOnlyPropertyMetadata.cs
- DbProviderManifest.cs
- SystemInfo.cs
- SiteMapNodeItem.cs
- NeedSkipTokenVisitor.cs
- SerializationSectionGroup.cs
- WebHttpElement.cs
- TextOutput.cs
- ISAPIApplicationHost.cs
- IisTraceWebEventProvider.cs
- Int64AnimationUsingKeyFrames.cs
- RadioButtonBaseAdapter.cs
- MiniCustomAttributeInfo.cs
- ShortcutKeysEditor.cs
- UIElement.cs
- BitHelper.cs
- EncodingInfo.cs
- BinaryFormatterWriter.cs
- GregorianCalendarHelper.cs
- WindowVisualStateTracker.cs
- PropertyCondition.cs
- IProducerConsumerCollection.cs
- ClientEventManager.cs
- ServiceChannelProxy.cs
- SizeConverter.cs
- MimeTypeMapper.cs
- DiscoveryClientChannelBase.cs
- BaseParser.cs
- IntSumAggregationOperator.cs
- BaseParaClient.cs
- TextTreeUndoUnit.cs
- QuaternionAnimation.cs
- TransformGroup.cs
- RawStylusInputCustomDataList.cs
- serverconfig.cs
- AlignmentYValidation.cs
- GridViewDeletedEventArgs.cs
- ItemCollection.cs
- SkipQueryOptionExpression.cs
- CompiledQueryCacheEntry.cs
- objectresult_tresulttype.cs
- HttpRequestMessageProperty.cs
- Table.cs
- QilLoop.cs
- ToolStripDropDownClosedEventArgs.cs
- FilterQuery.cs
- RuleCache.cs
- BatchServiceHost.cs
- OracleLob.cs
- ConnectionStringsExpressionBuilder.cs
- DocumentXmlWriter.cs
- BindStream.cs
- LogEntryUtils.cs
- SqlColumnizer.cs
- TextRunProperties.cs
- XPathExpr.cs
- RectangleConverter.cs
- BuildManager.cs
- DataGridViewCellStyleChangedEventArgs.cs