Professional Visual Studio Extensibility and over one million other books are available for Amazon Kindle. Learn more

Vous voulez voir cette page en français ? Cliquez ici.

Sign in to turn on 1-Click ordering.
More Buying Choices
Have one to sell? Sell yours here
Start reading Professional Visual Studio Extensibility on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Professional Visual Studio Extensibility [Paperback]

Keyvan Nayyeri
3.0 out of 5 stars  See all reviews (1 customer review)
List Price: CDN$ 59.99
Price: CDN$ 37.79 & FREE Shipping. Details
You Save: CDN$ 22.20 (37%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
Usually ships within 2 to 4 weeks.
Ships from and sold by Gift-wrap available.


Amazon Price New from Used from
Kindle Edition CDN $35.90  
Paperback CDN $37.79  
Join Amazon Student in Canada

Book Description

March 24 2008 Wrox Professional Guides

Visual Studio is a development IDE created by Microsoft to enable easier development for Microsoft programming languages as well as development technologies. It has been the most popular IDE for working with Microsoft development products for the past 10 years.

Extensibility is a key feature of Visual Studio. There have not been many books written on this aspect of Visual Studio. Visual Studio Extensibility (VSX) can be considered a hard topic to learn for many developers in comparison with most .NET related topics. Also, its APIs are very complex and not very well written. Some may refer to these APIs as “dirty” because they do not have good structure, naming convention, or consistency.

Visual Studio is now 10 years old. It was created during the COM days for COM programming but later migrated to .NET. However, Visual Studio still relies heavily on COM programming. It was revamped when moving to the .NET platform but still contains its COM nature; this fact is what makes it harder for .NET developers to work with VSX. Because it is an older product built on two technologies, it has produced inconsistency in code. Although there are problems with the current version of VSX, the future looks bright for it. The many different teams working on the software have been moved into one umbrella group known as the Visual Studio Ecosystem team.

Throughout the past 10 years Visual Studio has continued to grow and new extensibility features have been added. Learning all of the options with their different purposes and implementations is not easy. Many extensibility features are broad topics such as add-ins, macros, and the new domain-specific language tools in Visual Studio. Learning these topics can be difficult because they are not closely related to general .NET programming topics.

This book is for .NET developers who are interested in extending Visual Studio as their development tool. In order to understand the book you must know the following material well: Object-oriented programming (OOP), the .NET Framework and .NET programming, C# or Visual Basic languages, some familiarity with C++, some familiarity with XML and its related topics, and Visual Studio structure and usage. A familiarity with COM programming and different .NET technologies is helpful.

The aims of this book are to:

  • Provide an overview of all aspects of VSX
  • Enable readers to know where/when to use extensibility
  • Familiarize readers with VS Extensibility in detail
  • Show readers the first steps and let them learn through their own experiences
  • Use examples, sample code, and case studies to demonstrate things in such a way that helps readers understand the concepts
  • Avoid bothering readers with long discussions and useless code samples

In order to use this book, and get the most out of it, there are some technical requirements. You must have the following two packages installed on your machine to be able to read/understand the chapters and test code samples:

  • Visual Studio 2008 Team System Edition (or other commercial editions)
  • Visual Studio 2008 SDK 1.0 (or its newer versions)

You will need to buy Visual Studio 2008 to register for an evaluation version. The Free Express editions of Visual Studio do not support the extensibility options. The Visual Studio SDK is needed in order to read some of the chapters in the book and can be downloaded as a free package. The operating system doesn’t matter for the content of the book, but all code was written with Visual Studio 2008 Team System Edition in Windows Vista x86.

Chapters 1, 2, and 3 will give you an introduction to the basic concepts you need to understand before you can move on to the rest of the book. Chapter 4 discusses the automation model, which is an important prerequisite for many of the chapters in the book that focus on add-ins, macros, and VSPackages. Chapters 5-14 will utilize add-ins in a case study to learn about the main responsibilities of the automation model and some of the more common techniques used in VSX development. Each of the following chapters is dedicated to a specific extensibility option; they are independent of one another and you can read them in any order. It is important to read chapters 4-14 before you begin reading about the specific extensibility options.

Chapter 5 contains a walk-through of the Add-in Wizard and describes its steps. Chapter 6 will show you the anatomy of add-ins and explain how to create add-ins and how they work. Chapter 7 discusses how to manipulate solutions, projects, and project items via your code to build add-ins. Chapter 8 shows you how to deal with documents and code editors in your add-ins. Chapter 9 explains how to work with programming codes and how to manipulate their elements. Chapter 10 describes some ways to work with user interface elements, Windows Forms, and controls via code in your add-ins. Chapter 11 discusses the Tools Options page and uses add-ins as the case study to show you how to create your own Tools Options pages. Chapter 12 teaches you how to debug and test your add-ins. Chapter 13  shows you how to deploy your add-ins. Chapter 14 completes the discussion about add-ins by talk about resources and localization of add-ins. Chapter 15 discusses a new feature in VS 2008: the Visual Studio Shell. Chapter 16 talks about domain-specific language tools; you will learn how to build them and see a quick overview of DSL tools. Chapter 17 discusses debugging and how to extend debugging features. Chapter 18 talks about VSPackages as a way to extend VS functionality and add something new to its existing packages. Chapter 19 teaches you what a code snippet is and how to write and manage code snippets in Visual Studio to make your coding process easier. Chapter 20 talks about VS project templates and starter kits and how to write your own project templates. Chapter 21 focuses on MSBuild and writing custom builds for Visual Studio and .NET applications. Chapter 22 discusses Visual Studio macros in detail and explains how to build a Visual Studio macro.

Keyvan Nayyeri is a software architect and developer. He has a Bachelor of Science degree in applied mathematics. His main focus is on Microsoft development technologies and their related markup languages. Nayyeri is also a team leader and developer for several .NET open-source projects; this includes writing code for special purposes. He holds an MVP award for Comunnity Server. He recently co-authored Wrox Professional Community Server (2007).

Product Details

Product Description

From the Back Cover

Professional Visual Studio Extensibility

Are you ready to extend the capabilities of Visual Studio to become more efficient and productive? Whether you want to integrate optimized builds, enhanced programming tools, or other rapid application development features, this unique resource shows you how to develop customized extensions. It not only covers the Visual Studio IDE but also provides you with an excellent reference when coding add-ins, macros, and extensions.

After a quick introduction of basic concepts, this book delves into the automation model and add-in development with the help of a case study, numerous examples, and sample code. You'll discover how to take advantage of the Add-in Wizard, manipulate solutions and projects, work with text in documents and programming code, create Tool Options Pages, and more. Next you'll gain an in-depth understanding of specific extensibility options including the Visual Studio Shell and Domain-Specific Languages Tools. After that, you will learn how to integrate your own functionality with Visual Studio with the help of VSPackage. You'll then be able to apply your knowledge to other extensibility points covered in different chapters, including debugger type proxies and visualizers, code snippets, templates, MSBuild, and macros to save time and money when developing applications.

What you will learn from this book

  • A quick overview of Visual Studio Shell and Domain-Specific Languages Tools

  • Techniques for creating, debugging, testing, and deploying your add-ins

  • Ways to work with user interface elements, Windows Forms, and controls via code in your add-ins

  • Steps for extending Visual Studio functionality using VSPackages

  • Tips for writing and managing code snippets to make your coding process easier

  • Using Visual Studio templates to save time when writing code for common projects

  • How to use MSBuild to write custom builds for Visual Studio and .NET applications

  • New techniques for recording, developing, debugging, deploying, and running macros

Who this book is for
This book is for .NET developers who are interested in extending Visual Studio 2003, 2005 and 2008. It is also for programmers who want to write highly scalable applications quickly and efficiently. 

Wrox Professional guides are planned and written by working programmers to meet the real-world needs of programmers, developers, and IT professionals. Focused and relevant, they address the issues technology professionals face every day. They provide examples, practical solutions, and expert education in new technologies, all designed to help programmers do a better job.

About the Author

Keyvan Nayyeri is a software architect and developer who has a bachelor of science degree in applied mathematics. He was born in Kermanshah, Kurdistan, in 1984.
Keyvan’s main focus is on Microsoft development technologies and their related technologies, such as markup languages. He also has a serious passion for community activities and open-source software. As a result, he has authored many well-known .NET communities and has published various articles and tutorials on them. He is also a team leader and developer for several .NET open-source projects, where he increases his knowledge in many areas, including writing code for special purposes. As an old ASP.NET developer, Keyvan is also a big fan and follower of Telligent products and holds an MVP award for Community Server as well. Before this book, Keyvan recently co-authored Wrox Professional Community Server (Wrox, 2007).
When he’s not writing code, he enjoys blogging, reading technical books, listening to music, and playing video games. You can check out his blog, which contains his thoughts about matters both technical and personal, at

Inside This Book (Learn More)
Browse Sample Pages
Front Cover | Copyright | Table of Contents | Excerpt | Index | Back Cover
Search inside this book:

Customer Reviews

5 star
4 star
2 star
1 star
3.0 out of 5 stars
3.0 out of 5 stars
Most helpful customer reviews
3.0 out of 5 stars Correct Feb. 8 2009
By Nobody
This not a bad book, but it does not go very deeper in VSX, and so not really useful toward good website.
Was this review helpful to you?
Most Helpful Customer Reviews on (beta) 2.6 out of 5 stars  11 reviews
9 of 9 people found the following review helpful
2.0 out of 5 stars Not much here Aug. 19 2008
By Demetrius Tsitrelis - Published on
I'm not sure what the basic idea for the book was; to provide a summary of some (not anywhere near all) the features of the Visual Studio SDK or to serve as an introduction to using the SDK?

In any case, the book is mostly filler. The few examples are always trivial ones like hooking up a button or printing a message somewhere. I think I learned more about the capabilities of the SDK from reading the (argh!) actual SDK doc intros than from reading this entire book.

If you just want to write macros or add-ins for Visual Studio then there are other better books, online examples, etc. If you want to do something more advanced like create a VSPackage, language service, etc. then this is not the book.
3 of 3 people found the following review helpful
1.0 out of 5 stars Not worth the money April 18 2009
By Girish P. Nair - Published on
Format:Paperback|Verified Purchase
Rather than buy this book, please read MSDN articles. I didn't get anything out of it.
2 of 2 people found the following review helpful
2.0 out of 5 stars Starting Point at Best March 19 2009
By A Student - Published on
As many of the other reviewers stated, this book covers a broad range of topics at a very shallow level. It should best be viewed as a roadmap to the many, many api's provided by the Visual Studio environment. The examples are trivial.

The authors prose rambles, he repeats every paragraph by rewording it in the next paragraph. It reads like an undergraduate attempting to fill in a 10 page paper with 5 pages of material. Which is surprising since this is not a large book and a lot of it is code listings.

IMO, this book is best used as a starting point to Visual Studio plugin development. I recommend researching online before investing in this book.
2 of 2 people found the following review helpful
1.0 out of 5 stars A Repeat of MSDN Material Dec 7 2008
A Kid's Review - Published on
Just go to MSDN and read about this or get books like "DomainSpecificDevelopment". YOu won't get anything out of this one other than a few screen shots.
3 of 4 people found the following review helpful
2.0 out of 5 stars As boring as he looks Nov. 13 2008
By Nelson Drueding - Published on
I agree with Demetrius. The book lacks substance and the style is dry, dry dry. I know this stuff isn't sexy, but this author seems to go out of his way to put the reader to sleep. A pity. All the other books in this series I've read (quite a few) are much, much better.
Search Customer Reviews
Only search this product's reviews

Look for similar items by category