Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Framework / MS / Internal / Utility / TraceLog.cs / 1 / TraceLog.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: Log of recent actions. Use this to debug those nasty problems // that don't repro on demand and don't have enough information in a crash // dump. // // In the class(es) of interest, add a TraceLog object. At points of // interest, call TraceLog.Add to record a string in the log. After the // crash, call TraceLog.WriteLog (or simply examine the log directly in // the debugger). Log entries are timestamped. // //--------------------------------------------------------------------------- using System; using System.Collections; using System.Globalization; namespace MS.Internal.Utility { internal class TraceLog { // create an unbounded trace log internal TraceLog() : this(Int32.MaxValue) {} // create a trace log that remembers the last 'size' actions internal TraceLog(int size) { _size = size; _log = new ArrayList(); } // add an entry to the log. Args are just like String.Format internal void Add(string message, params object[] args) { // create timestamped message string string s = DateTime.Now.Ticks.ToString(CultureInfo.InvariantCulture) + " " + String.Format(CultureInfo.InvariantCulture, message, args); // if log is full, discard the oldest message if (_log.Count == _size) _log.RemoveAt(0); // add the new message _log.Add(s); } // write the log to the console internal void WriteLog() { for (int k=0; k<_log.Count; ++k) Console.WriteLine(_log[k]); } // return a printable id for the object internal static string IdFor(object o) { if (o == null) return "NULL"; else return String.Format(CultureInfo.InvariantCulture, "{0}.{1}", o.GetType().Name, o.GetHashCode()); } ArrayList _log; int _size; } } // 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
- XPathDescendantIterator.cs
- SoapParser.cs
- DesignerSerializationManager.cs
- RIPEMD160.cs
- XmlCustomFormatter.cs
- Size.cs
- StringAnimationUsingKeyFrames.cs
- SafeNativeMethodsCLR.cs
- ParameterToken.cs
- mediaclock.cs
- PerspectiveCamera.cs
- RunInstallerAttribute.cs
- MobileRedirect.cs
- TextSearch.cs
- ZoneButton.cs
- SelectionWordBreaker.cs
- ConnectivityStatus.cs
- ButtonStandardAdapter.cs
- ParserStack.cs
- TranslateTransform3D.cs
- PolyBezierSegment.cs
- XmlDataCollection.cs
- Relationship.cs
- ServiceOperationDetailViewControl.cs
- ImageCreator.cs
- SafeFileMapViewHandle.cs
- BitmapCodecInfoInternal.cs
- PointKeyFrameCollection.cs
- WebPartHeaderCloseVerb.cs
- BezierSegment.cs
- CodeCommentStatement.cs
- AnnouncementEventArgs.cs
- QueryContinueDragEventArgs.cs
- Executor.cs
- Path.cs
- OdbcParameterCollection.cs
- XPathAncestorQuery.cs
- TextFormatterHost.cs
- SharedHttpTransportManager.cs
- MetadataArtifactLoaderComposite.cs
- AncillaryOps.cs
- WindowsTreeView.cs
- VisualStyleElement.cs
- NodeLabelEditEvent.cs
- TcpStreams.cs
- SmtpMail.cs
- GradientBrush.cs
- Label.cs
- SmtpDigestAuthenticationModule.cs
- MatrixAnimationBase.cs
- Animatable.cs
- SerializationInfoEnumerator.cs
- CodeIterationStatement.cs
- FileResponseElement.cs
- DesignParameter.cs
- SByteStorage.cs
- XmlSchemaAnnotated.cs
- Container.cs
- CacheChildrenQuery.cs
- Utilities.cs
- InstanceLockedException.cs
- CharacterBufferReference.cs
- CodeValidator.cs
- XmlSchemaCollection.cs
- BindValidationContext.cs
- BuildProvider.cs
- LogArchiveSnapshot.cs
- MethodBody.cs
- SimpleHandlerBuildProvider.cs
- linebase.cs
- ForwardPositionQuery.cs
- ParseHttpDate.cs
- DelegatingConfigHost.cs
- Grid.cs
- DataAdapter.cs
- XmlNotation.cs
- GeneralTransform3DGroup.cs
- ProfileSection.cs
- OdbcStatementHandle.cs
- odbcmetadatacolumnnames.cs
- ActiveXSite.cs
- BuilderElements.cs
- PointUtil.cs
- GridView.cs
- DirectoryObjectSecurity.cs
- PlainXmlDeserializer.cs
- ScriptBehaviorDescriptor.cs
- Win32Interop.cs
- Membership.cs
- PrivateUnsafeNativeCompoundFileMethods.cs
- SafeBitVector32.cs
- HttpApplicationFactory.cs
- Fault.cs
- XsltQilFactory.cs
- ObsoleteAttribute.cs
- BrowserCapabilitiesFactoryBase.cs
- SolidColorBrush.cs
- OutputCacheModule.cs
- SoapFormatter.cs
- CollectionContainer.cs