Windows Developer Power Tools
by Avery, JamesRent Book
Digital
New Book
We're Sorry
Sold Out
Used Book
We're Sorry
Sold Out
Summary
Author Biography
James Avery, a solution architect working with Microsoft technologies, has been working with .NET since its second beta release. He's written articles for "MSDN Magazine", "ASP Today", and is a frequent blogger. Also, James is a Microsoft MVP, ASPInsider, and author of "Visual Studio Hacks" (O'Reilly).
Jim Holmes, a Microsoft MVP, has nearly 25 years experience in the IT industry, including network management, systems analysis, and software development in Perl, Java, C++, and .NET. He's the founder of the Dayton .NET Developers Group and co-founder of the Dayton-Cincinnati Code Camp. He has written extensively for VisualStudioHacks.com.
Table of Contents
| Foreword | p. xv |
| Credits | p. xix |
| Preface | p. xxix |
| Writing Code | |
| Building ASP.NET Applications | p. 3 |
| Building Sophisticated Ajax Applications with ASP.NET Atlas | p. 5 |
| Adding Ajax Functionality with Anthem.NET | p. 16 |
| Adding Ajax Functionality with Ajax.NET Professional | p. 20 |
| Generating User-Friendly URLs with UrlRewritingNet.UrlRewrite | p. 23 |
| Showing a "Please Wait" Dialog with BusyBoxDotNet | p. 26 |
| Creating Cleaner HTML Output with CSS Friendly Control Adapters | p. 32 |
| Adding Word-Processing Capabilities to Your Application with FreeTextBox | p. 39 |
| Creating Charts with the WebChart Control | p. 42 |
| Consuming and Publishing RSS Feeds with the RSS Toolkit | p. 46 |
| For More Information | p. 51 |
| Working with Windows Forms | p. 53 |
| Getting "That WinXP Look" with XP Common Controls | p. 54 |
| Creating Dockable Windows with DockPanel Suite | p. 63 |
| Creating a Professional User Interface with Krypton Toolkit | p. 69 |
| Learning More About Windows Controls with Control Spy | p. 74 |
| For More Information | p. 78 |
| Developing in .NET 3.0 (a.k.a. "WinFx") | p. 80 |
| Creating Great Visuals for Your Applications with Expression Graphic Designer | p. 82 |
| Creating WinFx User Interfaces Without Code Using Interactive Designer | p. 90 |
| Writing XAML in XamlPad | p. 97 |
| Avoiding XML Configuration Files with the Service Configuration Editor | p. 102 |
| Deciphering WCF Logs with the Service Trace Viewer | p. 121 |
| Developing WinFx Applications in Visual Studio with Development Tools for WinFx | p. 126 |
| For More Information | p. 132 |
| Working with Code Libraries | p. 133 |
| Externalizing Business Rules with NxBRE | p. 134 |
| Diagnosing Without Downtime via log4net | p. 143 |
| Searching Your Data Using Lucene.Net | p. 149 |
| Finding Changes Between Assembly Versions with LibCheck | p. 161 |
| Comparing Assemblies with Reflector.Diff | p. 166 |
| Implementing Spell Checking in Your Windows and Web Apps with NetSpell | p. 172 |
| Creating Graphs and Plot Charts Quickly with NPlot | p. 176 |
| Sorting Algorithms in C# with NSort | p. 185 |
| Creating RSS Feeds with RSS.NET | p. 188 |
| Using Zip, GZip, Tar, and BZip2 Archives in Your Software with SharpZipLib | p. 191 |
| Generating Excel Files from Code Using ExcelXmlWriter (Without Having Excel!) | p. 195 |
| Creating PDFs with iTextSharp | p. 202 |
| For More Information | p. 207 |
| Generating Code | p. 209 |
| Creating Code Automatically with MyGeneration | p. 211 |
| Generating Your Data-Access Layer with Codus | p. 222 |
| Writing Your Web Services Contract First with WSCF | p. 226 |
| Generating XML Schemas and Strongly Typed DataSets with XSD.exe | p. 234 |
| Practicing Contract-First XML Development with XSDObjectGenerator | p. 240 |
| For More Information | p. 249 |
| Writing Code | p. 250 |
| Building .NET Applications with Visual Studio Express | p. 251 |
| Developing .NET Applications Using SharpDevelop | p. 270 |
| Writing Mono Applications on Linux and Mac OS X with MonoDevelop | p. 284 |
| Creating Standalone Snippets with Snippet Compiler | p. 290 |
| Handling Small Tasks with Notepad2 | p. 293 |
| Mastering Regular Expressions with the Regulator | p. 297 |
| Creating Regular Expressions with ReguLazy | p. 303 |
| For More Information | p. 309 |
| Creating Documentation | p. 310 |
| Documenting Your Source Code with GhostDoc | p. 312 |
| Viewing Documentation in Visual Studio with CR_Documentor | p. 320 |
| Creating Professional Documentation with NDoc | p. 322 |
| Printing PDF Documents with PDFCreator | p. 328 |
| Building a FAQ with skmFAQs | p. 333 |
| For More Information | p. 340 |
| Enhancing Visual Studio | p. 341 |
| Boosting Productivity with CoolCommands | p. 342 |
| Improving Visual Studio's Designers with the PowerToy for Class and Distributed Systems Designers | p. 346 |
| Opening Files Quickly with VSFileFinder | p. 350 |
| Mastering Unmanaged APIs with PINVOKE.NET | p. 354 |
| Spell Checking ASP.NET and HTML with the HTML/ASP.NET Spell Checker Add-in | p. 359 |
| Switching Window Layouts Quickly with VSWindowManager | p. 366 |
| Blogging or Emailing Your Code in Style with the CopySourceAsHtml Visual Studio Add-in | p. 368 |
| Editing CSS in Visual Studio with the CSS Properties Window | p. 371 |
| Bringing Web Application Projects Back to Visual Studio 2005 | p. 374 |
| Sharing Your Visual Studio Goodies with the Content Installer Power Toys | p. 378 |
| For More Information | p. 382 |
| Checking Code | |
| Analyzing Your Code | p. 387 |
| Checking Complexity and Dependencies with Peli's Reflector Addins | p. 391 |
| Checking Your Source Code's Complexity with SourceMonitor | p. 396 |
| Analyzing Code Inside Visual Studio with CR_Metrics | p. 404 |
| Finding Your Code's Dependency Complexities with NDepend | p. 409 |
| Writing Better Code with FxCop | p. 418 |
| For More Information | p. 427 |
| Testing Your Software | p. 429 |
| Unit Testing Your Code with NUnit | p. 433 |
| Speeding Your Test Development with NUnit Code Snippets | p. 450 |
| Writing Advanced Unit Tests with MbUnit | p. 452 |
| Getting More from Your Tests with Zanebug | p. 462 |
| Bringing Your Customers into the Testing Process with FitNesse | p. 468 |
| Analyzing Unit-Test Coverage with NCover | p. 480 |
| Analyzing Code Coverage with NCoverExplorer | p. 494 |
| Integrating Unit Testing into Visual Studio with TestDriven.NET | p. 504 |
| Integrating Mock Objects into Your Testing with NMock 2.0 | p. 510 |
| Creating Strongly Typed Mocks with Rhino.Mocks | p. 522 |
| Unit Testing Your GUI with NUnitForms | p. 526 |
| Creating Performance Benchmark Tests with NTime | p. 532 |
| Automating Web Application Testing with Selenium Core | p. 537 |
| Driving Your Web Applications Automatically with Watir | p. 544 |
| For More Information | p. 549 |
| Running a Development Project | |
| Working with Source-Control Systems | p. 553 |
| Setting Up Subversion Rapidly with SVN 1-Click Setup | p. 556 |
| Accessing Subversion and CVS with TortoiseCVS and TortoiseSVN | p. 561 |
| Using Subversion Inside Visual Studio with AnkhSVN | p. 581 |
| Removing Visual Source Safe Bindings with SourceSafe Binding Remover | p. 587 |
| Comparing Files with WinMerge | p. 590 |
| For More Information | p. 594 |
| Building, Using Continuous Integration on, and Deploying Your Applications | p. 595 |
| Creating Consistent Builds with NAnt | p. 598 |
| Automating Your Build Process with MSBuild | p. 605 |
| Building .NET 1.1 Assemblies in MSBuild with MSBee | p. 610 |
| Extending MSBuild Capabilities with MSBuild Community Tasks | p. 614 |
| Managing Your Build Process Visually with MSBuild Sidekick | p. 619 |
| Shortening the Development Cycle with CruiseControl.NET | p. 626 |
| Easing the Burden of Implementing a Continuous Integration Process with CI Factory | p. 637 |
| Simplifying Web Application Deployments with Unleash It | p. 650 |
| Easing Web Application Deployments with Web Deployment Projects | p. 657 |
| Creating a Setup Project with WiX | p. 662 |
| For More Information | p. 665 |
| Boosting Team Collaboration | p. 667 |
| Improving Team Communication and Collaboration with Basecamp | p. 669 |
| Building Online Communities with Community Server | p. 677 |
| Creating a Blog with Subtext | p. 686 |
| Collaborating Online with FlexWiki | p. 689 |
| Driving Another PC Remotely via XP's Remote Assistance | p. 694 |
| Talking to Colleagues with Skype | p. 710 |
| Chatting with Anyone Using GAIM | p. 719 |
| Administering Team Foundation Users with the TFS Administration Tool | p. 723 |
| For More Information | p. 727 |
| Tracking Bugs, Changes, and Other Issues | p. 729 |
| Implementing a Bare-Bones Defect Tracker with BugTracker.NET | p. 731 |
| Handling Mid-Sized Projects with CodeTrack | p. 737 |
| Running an Enterprise-Level Bug-Tracking System with Bugzilla | p. 747 |
| Managing a Project with Trac | p. 755 |
| For More Information | p. 762 |
| Troubleshooting Code and Applications | |
| Troubleshooting and Debugging | p. 765 |
| Monitoring File Access in Your System with Filemon | p. 767 |
| Identifying TCP Port and Endpoint Issues with TCPView | p. 771 |
| Seeing What's Being Accessed in Your Registry with Regmon | p. 774 |
| Getting a Better View of Processes on Your System with Process Explorer | p. 776 |
| Digging into Your Program's CLR Interactions with PInvoke and COM Using CLR SPY | p. 782 |
| Tracking Down Memory-Allocation Problems with CLR Profiler | p. 793 |
| Debugging Your Application After It's Been Deployed with ClrDump | p. 798 |
| Debugging Hangs and Monitoring Processes with Managed Stack Explorer | p. 804 |
| Examining HTTP Traffic with Fiddler | p. 809 |
| Identifying Network Problems with PingPlotter Freeware | p. 815 |
| Examining Logs with LogParser | p. 818 |
| Simplifying Debugging with Visual Studio 2005 Visualizers | p. 825 |
| Finding Bottlenecks with NProf | p. 831 |
| For More Information | p. 835 |
| Using Decompilers and Obfuscators | p. 837 |
| Examining Common Ground with ILDASM | p. 839 |
| Analyzing Assemblies with Reflector | p. 850 |
| Debugging .NET Assemblies Without Source Code Using Dotnet IL Editor | p. 856 |
| Preventing Reverse-Engineering of Your Code with Dotfuscator | p. 868 |
| For More Information | p. 876 |
| Code Tools | |
| Tightening Up Your Security | p. 881 |
| Analyzing Threats Your Application Faces with the Threat Analysis & Modeling Tool | p. 882 |
| Protecting Your Communications with the Bouncy Castle Cryptography APIs | p. 896 |
| Mitigating XSS Vulnerabilities with the Anti-Cross Site Scripting Library | p. 906 |
| Highlighting Explorer Windows' Security Privileges Using PrivBar | p. 909 |
| Opening a Command Window with Admin Privileges Using MakeMeAdmin.cmd | p. 912 |
| For More Information | p. 914 |
| Building Your Application on Frameworks | p. 917 |
| Reusing Professional Infrastructure with Enterprise Library | p. 919 |
| Creating Web Applications and Systems with DotNetNuke | p. 928 |
| Improving Smart Device Development with the Smart Device Framework | p. 937 |
| Building and Deploying Cross-Platform .NET Applications with Mono | p. 943 |
| Spelunking the Framework with Rotor | p. 956 |
| Simplifying Web Development with Castle MonoRail | p. 963 |
| Obtaining a Decoupled Architecture with the Castle Windsor Container | p. 972 |
| Improving Your Code's Design and Testability with PicoContainer.NET | p. 980 |
| For More Information | p. 988 |
| Working with XML | p. 990 |
| Transforming XML Documents with nxslt2 | p. 992 |
| Displaying XML on the Web with eXml | p. 995 |
| BuildingCompositeXMLDocumentswithXInclude.NET | p. 1000 |
| Referencing Part of an XML Document with XPointer.NET | p. 1004 |
| Extending XSLT Processing with EXSLT.NET | p. 1009 |
| Comparing and Unit Testing XML with XML Diff and Patch | p. 1015 |
| For More Information | p. 1021 |
| Working with Databases | |
| Interacting with Databases | p. 1025 |
| Finding the Proper Connection String with ConnectionStrings.com | p. 1027 |
| Creating SQL Connection Strings Quickly with SQL Sender Connection String Builder | p. 1030 |
| Administering SQLite Databases with the SQLite Administrator | p. 1032 |
| Working with Oracle Inside Visual Studio with Oracle Developer Tools | p. 1038 |
| Managing Oracle Databases with Oracle SQL Developer | p. 1045 |
| For More Information | p. 1050 |
| Exploring Object/Relational Mapping | p. 1052 |
| Mapping Objects to the Database with NHibernate (or How to Stop Writing All That Data-Access Code) | p. 1054 |
| Mapping Business Objects with NPersist | p. 1062 |
| Easing the Burden of Creating O/RM Files with ObjectMapper | p. 1072 |
| Simplifying Data Access with Castle ActiveRecord | p. 1079 |
| For More Information | p. 1085 |
| Miscellaneous | |
| Enhancing Web Development | p. 1089 |
| Avoiding Web Headaches with the Web Developer Extension for Firefox | p. 1091 |
| Debugging Web Pages with the Web Developer Toolbar for Internet Explorer | p. 1098 |
| Diagnosing JavaScript and Ajax with Web Development Helper | p. 1102 |
| Eliminating Memory Leaks in Internet Explorer with Drip | p. 1109 |
| Debugging Web Pages at Runtime with DOM Helper | p. 1116 |
| Checking Web Pages with the W3C Markup Validation Service | p. 1123 |
| Checking Your Web Site's Accessibihty with WebXACT | p. 1126 |
| Cleaning Up Your HTML with HTML Tidy | p. 1130 |
| For More Information | p. 1133 |
| Boosting Productivity with Windows Utilities | p. 1134 |
| Launching Tools and Web Sites Quickly with SlickRun | p. 1136 |
| Spotlighting Content in Your Presentations with ZoomIt | p. 1142 |
| Getting to the Right Detail with Magnifixer | p. 1145 |
| Extracting Files from Windows Installer Packages with Less MSIerables | p. 1149 |
| Handling FTP More Efficiency with FileZilla | p. 1152 |
| Opening a Shell Where You Need It with Command Prompt Here | p. 1157 |
| Grabbing Screenshots with Cropper | p. 1159 |
| Grabbing Color Values with ColorMania | p. 1163 |
| Bringing .NET to the Command Line with PowerShell | p. 1167 |
| Getting the Most out of PowerShell with PowerShell IDE | p. 1177 |
| Managing and Switching Tasks with TaskSwitchXP | p. 1182 |
| Keeping Data in Sync with SyncToy | p. 1186 |
| Resolving Locking Problems with Unlocker | p. 1191 |
| Bringing POSIX Emulation to Windows with Cygwin | p. 1194 |
| For More Information | p. 1207 |
| Appendix | |
| Common Tasks in Visual Studio | p. 1211 |
| Index | p. 1219 |
| Table of Contents provided by Ingram. All Rights Reserved. |
An electronic version of this book is available through VitalSource.
This book is viewable on PC, Mac, iPhone, iPad, iPod Touch, and most smartphones.
By purchasing, you will be able to view this book online, as well as download it, for the chosen number of days.
Digital License
You are licensing a digital product for a set duration. Durations are set forth in the product description, with "Lifetime" typically meaning five (5) years of online access and permanent download to a supported device. All licenses are non-transferable.
More details can be found here.
A downloadable version of this book is available through the eCampus Reader or compatible Adobe readers.
Applications are available on iOS, Android, PC, Mac, and Windows Mobile platforms.
Please view the compatibility matrix prior to purchase.
