Create and delete virtual directories in IIS 4.0

This article was previously published under Q188954
This article has been archived. It is offered "as is" and will no longer be updated.
Notice
We strongly recommend that all users upgrade to Microsoft Internet Information Services (IIS) 6.0 running on Microsoft Windows Server 2003. IIS 6.0 significantly enhances Web infrastructure security. For more information about IIS security-related topics, visit the following Microsoft Web site:
Summary
CrtVDirD.exe is a self extracting executable that contains a Microsoft Visual C++sample that demonstrates how to add and delete Virtual Directories andApplications in IIS 4.0 using the IIS AdminBase Object and the IWamAdmin Object. The sample was built with Visual C++5.0.
More information
The following files are available for download from the MicrosoftDownload Center:
DownloadDownload the Crtvdird.exe package now.For more information about how to download Microsoft support files, click the following article number to view the article in the Microsoft Knowledge Base:
119591 How to obtain Microsoft support files from online services
Microsoft scanned this file for viruses. Microsoft used the most current virus-detection software that was available on the date that the file was posted. The file is stored on security-enhanced servers that help prevent any unauthorized changes to the file.

Note This sample fails to build under Visual C++ 6.0. To solve this problem, change CrtVDir.cpp so that you include cguid.h before atlbase.h.

CrtVDir: uses the IIS Admin Base Object to add or remove VirtualDirectories to a Web Server. It uses the IWamAdmin object to create orremove Applications.

Note You must create a virtual directory before you create an application.

Usage:

To create a Virtual Directory (CD):
CrtVDir.exe CD <path> <name> [<permissions>] [<site>]
To remove a Virtual Directory (RD):
CrtVDir.exe RD <name> [<site>]
To create an Application (CA):
CrtVDir.exe CA <metabasepath> <INPROC|OOP>
To remove an Application (RA):
CrtVDir.exe RA <metabasepath>
Params:

Path - Physical path to which the Virtual Directory refers.

Name - Name for virtual directory.

Metabasepath - Metabasepath is the full metabase path to the relevant key. Note that if the path you enter does not begin with a "/" character, ISAPIReg prepends "/LM/" to the path.

Permissions - see later reference in article.

Site - Defaults to "1" if not supplied.

INPROC|OOP - Application runs in-process of out-of-process.

Permissions - The following values are for the common permission flags. These may be added together to form a combination of permissions for the virtual root:
1 = Read Access
2 = Write Access
4 = Execute Access (including Script)
512 = Script Access
Samples:

To obtain help on the command line parameters:
C:> CrtVDir.exe
To create NewVDir Virtual Directory pointing to D:\InetPub\wwwroot\NewVDir:
C:> CrtVDir.exe CD D:\InetPub\wwwroot\NewVDir NewVDir
To remove the same directory:
C:> CrtVDir.exe RD NewVDir
To create an application:
C:> CrtVDir.exe CA w3svc/1/root/NewVDir INPROC
To remove an application:
C:> CrtVDir.exe RA w3svc/1/root/NewVDir
Metabase Issues:

The metabase is a secure object, and requires sufficient permissions toopen and use. Any application that uses this code to access the metabasemust run in a context with appropriate permissions.

The header file for IWamAdmin was not included in the Internet InformationServer (IIS) 4.0 Software Development Kit (SDK). You can get the file fromthe following Web site:
References
Microsoft Internet Information Server 4.0 Documentation
Crtvdird
Properties

Article ID: 188954 - Last Review: 11/02/2013 22:22:00 - Revision: 7.0

  • kbnosurvey kbarchive kbdownload kbfile kbinfo KB188954
Feedback
ERROR: at System.Diagnostics.Process.Kill() at Microsoft.Support.SEOInfrastructureService.PhantomJS.PhantomJSRunner.WaitForExit(Process process, Int32 waitTime, StringBuilder dataBuilder, Boolean isTotalProcessTimeout)