IVsAggregatableProject::InitializeForOuter Method (String^, String^, String^, UInt32, Guid, IntPtr, Int32)
Called by the owner, the outer project subtype, to have the owned project, the inner project subtype, to do its initialization work.
Assembly: Microsoft.VisualStudio.Shell.Interop.8.0 (in Microsoft.VisualStudio.Shell.Interop.8.0.dll)
int InitializeForOuter( String^ pszFilename, String^ pszLocation, String^ pszName, unsigned int grfCreateFlags, [InAttribute] Guid% iidProject, [OutAttribute] IntPtr% ppvProject, [OutAttribute] int% pfCanceled )
Parameters
- pszFilename
-
Type:
System::String^
[in] Project file name of the project to be initialized.
- pszLocation
-
Type:
System::String^
[out] Location of the initialized project file.
- pszName
-
Type:
System::String^
[in] Pointer to a null-terminated string containing the name.
- grfCreateFlags
-
Type:
System::UInt32
[in] Controls how a project is created or opened. Values are taken from the __VSCREATEPROJFLAGS enumeration.
- iidProject
-
Type:
System::Guid
[in] Identifier of the interface of the returned ppvProject.
- ppvProject
-
Type:
System::IntPtr
[out, iid_is(iidProject)] Pointer to the interface specified by iidProject.
- pfCanceled
-
Type:
System::Int32
[out] Pointer to a flag where true indicates canceled.
Return Value
Type: System::Int32If the method succeeds, it returns S_OK. If it fails, it returns an error code.
From vsshell80.idl:
HRESULT IVsAggregatableProject::InitializeForOuter( [in] LPCOLESTR pszFilename, [in] LPCOLESTR pszLocation, [in] LPCOLESTR pszName, [in] VSCREATEPROJFLAGS grfCreateFlags, [in] REFIID iidProject, [out, iid_is(iidProject)] void **ppvProject, [out] BOOL *pfCanceled );
The owned project subtype should do all of its project creation work, similar to CreateProject, in your implementation of this method.