Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Net / System / Net / NetworkInformation / SystemIPInterfaceStatistics.cs / 1305376 / SystemIPInterfaceStatistics.cs
////// namespace System.Net.NetworkInformation { using System.Net.Sockets; using System; using System.ComponentModel; /// /// Provides support for ip configuation information and statistics. /// IP statistics internal class SystemIPv4InterfaceStatistics:IPv4InterfaceStatistics { MibIfRow ifRow = new MibIfRow(); private SystemIPv4InterfaceStatistics(){ } internal SystemIPv4InterfaceStatistics(long index){ GetIfEntry(index); } public override long OutputQueueLength{get {return ifRow.dwOutQLen;}} public override long BytesSent{get {return ifRow.dwOutOctets;}} public override long BytesReceived{get {return ifRow.dwInOctets;}} public override long UnicastPacketsSent{get {return ifRow.dwOutUcastPkts;}} public override long UnicastPacketsReceived{get { return ifRow.dwInUcastPkts;}} public override long NonUnicastPacketsSent{get { return ifRow.dwOutNUcastPkts;}} public override long NonUnicastPacketsReceived{get { return ifRow.dwInNUcastPkts;}} public override long IncomingPacketsDiscarded{get { return ifRow.dwInDiscards;}} public override long OutgoingPacketsDiscarded{get { return ifRow.dwOutDiscards;}} public override long IncomingPacketsWithErrors{get { return ifRow.dwInErrors;}} public override long OutgoingPacketsWithErrors{get { return ifRow.dwOutErrors;}} public override long IncomingUnknownProtocolPackets{get { return ifRow.dwInUnknownProtos;}} internal long Mtu{get { return ifRow.dwMtu;}} internal OperationalStatus OperationalStatus{ get{ switch (ifRow.operStatus) { case OldOperationalStatus.NonOperational: return OperationalStatus.Down; case OldOperationalStatus.Unreachable: return OperationalStatus.Down; case OldOperationalStatus.Disconnected: return OperationalStatus.Dormant; case OldOperationalStatus.Connecting: return OperationalStatus.Dormant; case OldOperationalStatus.Connected: return OperationalStatus.Up; case OldOperationalStatus.Operational: return OperationalStatus.Up; } //state unknow return OperationalStatus.Unknown; } } internal long Speed{get { return ifRow.dwSpeed;}} //This method is used to get information for ipv4 specific interfaces //we should only call this the first time one of the properties //are accessed. void GetIfEntry(long index) { if (index == 0 ) return; ifRow.dwIndex = (uint)index; uint result = UnsafeNetInfoNativeMethods.GetIfEntry(ref ifRow); if (result != IpHelperErrors.Success) { throw new NetworkInformationException((int)result); } } } } // 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
- Behavior.cs
- MultipleViewPattern.cs
- FileDialog_Vista.cs
- SettingsProperty.cs
- ArraySet.cs
- NavigationPropertyAccessor.cs
- EntityContainer.cs
- ImageBrush.cs
- FileChangesMonitor.cs
- SHA256.cs
- METAHEADER.cs
- Vector3DCollection.cs
- MatrixConverter.cs
- TextBoxAutoCompleteSourceConverter.cs
- PlaceHolder.cs
- UnsafeNativeMethods.cs
- KeyFrames.cs
- CommunicationException.cs
- TableLayoutStyle.cs
- Object.cs
- Light.cs
- ComboBoxAutomationPeer.cs
- LocalizabilityAttribute.cs
- DataContract.cs
- Brush.cs
- BevelBitmapEffect.cs
- SoapServerMessage.cs
- DataSourceCache.cs
- DbProviderFactories.cs
- DataGridViewRowPostPaintEventArgs.cs
- HttpWebResponse.cs
- ConfigurationStrings.cs
- DynamicActivityTypeDescriptor.cs
- WebServicesInteroperability.cs
- SoapWriter.cs
- ScriptModule.cs
- TreeNodeStyle.cs
- DefaultSerializationProviderAttribute.cs
- ReadOnlyTernaryTree.cs
- LazyTextWriterCreator.cs
- OleDbReferenceCollection.cs
- ResourcesBuildProvider.cs
- GradientStop.cs
- ContentControl.cs
- SqlClientWrapperSmiStream.cs
- XmlSchemaResource.cs
- TextTreePropertyUndoUnit.cs
- ResourceDescriptionAttribute.cs
- StringCollection.cs
- HttpRuntime.cs
- NullableLongSumAggregationOperator.cs
- shaperfactoryquerycachekey.cs
- NotificationContext.cs
- ObjectStateEntryDbUpdatableDataRecord.cs
- XamlDesignerSerializationManager.cs
- CounterCreationData.cs
- StagingAreaInputItem.cs
- CallbackWrapper.cs
- XmlStringTable.cs
- XmlCompatibilityReader.cs
- XmlHierarchyData.cs
- ThreadStartException.cs
- safex509handles.cs
- DataRelationPropertyDescriptor.cs
- XmlReflectionMember.cs
- SetterBase.cs
- DataSourceCache.cs
- SplineKeyFrames.cs
- CustomWebEventKey.cs
- ObjectRef.cs
- TableLayoutPanelDesigner.cs
- GridViewColumnHeaderAutomationPeer.cs
- CustomValidator.cs
- MulticastOption.cs
- ParentQuery.cs
- AccessText.cs
- RSAOAEPKeyExchangeFormatter.cs
- Cursor.cs
- ReadingWritingEntityEventArgs.cs
- SoapInteropTypes.cs
- FrameworkRichTextComposition.cs
- TabControlCancelEvent.cs
- MultipleViewPatternIdentifiers.cs
- OutputCacheSettings.cs
- Error.cs
- CssTextWriter.cs
- TypeLoadException.cs
- QueryContext.cs
- SchemaCollectionCompiler.cs
- dbenumerator.cs
- DocumentViewerConstants.cs
- NumberEdit.cs
- DragCompletedEventArgs.cs
- SuppressIldasmAttribute.cs
- SearchForVirtualItemEventArgs.cs
- PropertyItem.cs
- ObjectDataSourceChooseTypePanel.cs
- SqlTypeConverter.cs
- ObjectQueryProvider.cs
- App.cs