searching and reporting in defect tracking systems, overview of,
209-216
Server Explorer window, accessing when debugging SQL stored procedures,
135
Server Variables tracing information in ASP.NET, overview of,
129
servers, debugging failed request processing on,
144
service startup code, using debug asserts with,
79
ServiceNotification flag, using with debug asserts and Windows services,
77,
81-82
services, using debug asserts in,
78,
84-85
software agents, manual installation of,
45
source control, overview of,
224-233
SourceSafe
advisory about keeping clock accurate for use of,
237
allowing developers to work together with,
227
comparing file versions with,
241
configuring aliasing in,
226
fetching all files at startup with,
236
managing simultaneous check-outs with,
228
protecting against accidental deletion of files with,
232-233
rolling back to earlier versions with,
231-232
viewing checked out files with,
227
viewing history of all changes with,
229-230
wildcard search feature in,
243
writing comments when checking in files with,
240
SourceSafe branches, exploiting,
244
SourceSafe permissions, changing,
239
spreadsheet bug, example of,
63-64
SQL Triggers, setting breakpoints on,
137
SqlConnection class, use of MDAC2.6 database library with,
27
stack trace, examples of,
91-92
starvation threading bugs, overview of,
177-178
state field in PRs, purpose of,
207
static methods, managing threads with,
174
stored procedures
debugging in applications,
137
specifying parameters to,
137
strings, reasoning about,
50
<switches> section in.config file, explanation of,
108
synchronization, role in multithreaded programs,
173-174
SyncLock statements as synchronization method, using,
174-175
System.Diagnostics.Debug class
calling Assert method with,
61
using with Debug class,
68
System.IO.Path class, benefits of,
93
System.Threading.ReaderWriterLock, purpose of,
194-195
System.Web class library, determining ASP.NET log contexts with,
135