Develop on IIS 7
By Tali Smith
November 15, 2009
The following articles provide information about developing on Internet Information Services 7 (IIS 7) and above.
Use Development Tools
Microsoft® Visual Studio® provides several options for working with IIS when developing Web sites and Web applications. In Microsoft® Visual Studio® 2008, the Web site and Web application features support IIS in Windows® 7, Windows Vista®, and Windows Server® 2008 operating system environments. In addition, the Web Deployment Project 2008 also provides support for IIS.
The following topics address development tools;
- Visual Studio 2008 with IIS 7 and Above.
- Microsoft® Visual Studio® 2005 with IIS 7 and Above.
- Using Visual Studio 2008 with IIS 7.0 and Above.
- Using Visual Studio 2005 with IIS 7.0 and Above.
Extend IIS 7 and Above
IIS is built with a completely modular architecture on top of rich extensibility APIs. This enables developers to easily add, remove, and even replace built-in IIS components with hand-crafted ones that are specifically suited for any given Web site. It has never been so easy to plug code deep into the IIS core pipeline and extend IIS in ways that were impossible before.
For example, a few lines of code allow developers to write modules or handlers that provide new authentication and authorization schemes, do run-time or security analysis of incoming requests, and inspect responses. But to provide a real value-add, these modules must be manageable via programming interfaces, command-line tools, and a user interface.
Runtime Extensibility
- An End-to-End Extensibility Example for IIS 7.0 and Above Developers.
- Developing IIS 7.0 and Above Modules and Handlers with the .NET Framework.
- Sample: Web Analytics Tracking Module.
- Extending Web Server Functionality in .NET.
- Develop a Native C\C++ Module for IIS 7.0 and Above.
- Developing a Module Using .NET.
- How to Add Tracing to IIS 7.0 and Above Managed Modules.
- Sample: Image Watermark Module.
Extend the Management UI
- Overview of MWA and MWM for IIS 7.0 and Above.
- How to Create a Simple IIS Manager Module.
- How to Get Started Extending Module Properties for IIS 7.0 and Above in IIS Manager.
- Understanding UI Extension Authoring
Extend the Configuration
- Configuration Extensibility.
- Extending IIS Configuration.
- Extending IIS 7.0 and Above Schema and Accessing the Custom Sections Using MWA.
Develop for FTP 7.5
Microsoft has created a new File Transfer Protocol (FTP) service that has been completely rewritten for Windows Server® 2008. This new FTP service incorporates many new features that enable Web authors to publish content better than before, and offers Web administrators more security and deployment options.
The new FTP 7.5 service supports extensibility that allows you to extend the built-in functionality that ships with the FTP service. More specifically, FTP 7.5 supports creating your own authentication and authorization providers. You can also create providers for custom FTP logging and for determining the home directory information for your FTP users.
For managed code (C#), see:
- How to Use Managed Code (C#) to Create a Simple FTP Authentication Provider.
- How to Use Managed Code (C#) to Create a Simple FTP Home Directory Provider.
- How to Use Managed Code (C#) to Create a Simple FTP Logging Provider.
- How to Use Managed Code (C#) to Create an FTP Authentication Provider using an XML Database.
- How to Use Managed Code (C#) to Create an FTP Provider that Sends an Email when Files are Uploaded.
- How to Use Managed Code (C#) to Create an FTP Authentication Provider with Dynamic IP Restrictions.
For native code (C++), see:
- How to Use Native Code (C++) to Create a Simple FTP Authentication Provider.
- How to Use Native Code (C++) to Create a Simple FTP Home Directory Provider.
- How to Use Native Code (C++) to Create a Simple FTP Logging Provider.
For managed code (Microsoft® Visual Basic®), see:
- How to Use Managed Code (Visual Basic) to Create a Simple FTP Home Directory Provider.
- How to Use Managed Code (Visual Basic) to Create a Simple FTP Logging Provider.
Discuss in IIS Forums