This documentation is archived and is not being maintained.

IVsProjectFactory.CreateProject Method

Creates a new project.

Namespace:  Microsoft.VisualStudio.Shell.Interop
Assembly:  Microsoft.VisualStudio.Shell.Interop (in Microsoft.VisualStudio.Shell.Interop.dll)

int CreateProject(
	string pszFilename,
	string pszLocation,
	string pszName,
	uint grfCreateFlags,
	ref Guid iidProject,
	out IntPtr ppvProject,
	out int pfCanceled
)

Parameters

pszFilename
Type: System.String

[in] File name of the project that will be created.

pszLocation
Type: System.String

[in] Location where the project will be created.

pszName
Type: System.String

[in] If applicable, the name of the template to use when cloning a new project.

grfCreateFlags
Type: System.UInt32

[in] Set of flag values taken from the __VSCREATEPROJFLAGS enumeration.

iidProject
Type: System.Guid%

[in] Identifier of the interface that the caller wants returned.

ppvProject
Type: System.IntPtr%

[out, iid_is(iidProject)] Pointer to the interface specified by iidProject.

pfCanceled
Type: System.Int32%

[out] Returns true if the user presses the Cancel button to abort the creation of this project. Otherwise, it is false.

Return Value

Type: System.Int32
If the method succeeds, it returns S_OK. If it fails, it returns an error code.

COM Signature

From vsshell.idl:

HRESULT IVsProjectFactory::CreateProject(
   [in] LPCOLESTR pszFilename,
   [in] LPCOLESTR pszLocation,
   [in] LPCOLESTR pszName,
   [in] VSCREATEPROJFLAGS grfCreateFlags,
   [in] REFIID iidProject,
   [out, iid_is(iidProject)] void **ppvProject,
   [out] BOOL *pfCanceled
);

CreateProject is called by the shell when a user tries to create a new project.

Create a new project by cloning an existing template project (which could be empty). See Managed Visual Studio Project and Basic Project samples for examples. The environment uses the file extension to determine the VSPackage on which to call this method.

Show: