IVsProject.AddItem 方法

定义

在项目中创建新项,将现有文件添加到项目中,或导致运行 "添加项向导"。

public:
 int AddItem(System::UInt32 itemidLoc, Microsoft::VisualStudio::Shell::Interop::VSADDITEMOPERATION dwAddItemOperation, System::String ^ pszItemName, System::UInt32 cFilesToOpen, cli::array <System::String ^> ^ rgpszFilesToOpen, IntPtr hwndDlgOwner, cli::array <Microsoft::VisualStudio::Shell::Interop::VSADDRESULT> ^ pResult);
public int AddItem (uint itemidLoc, Microsoft.VisualStudio.Shell.Interop.VSADDITEMOPERATION dwAddItemOperation, string pszItemName, uint cFilesToOpen, string[] rgpszFilesToOpen, IntPtr hwndDlgOwner, Microsoft.VisualStudio.Shell.Interop.VSADDRESULT[] pResult);
abstract member AddItem : uint32 * Microsoft.VisualStudio.Shell.Interop.VSADDITEMOPERATION * string * uint32 * string[] * nativeint * Microsoft.VisualStudio.Shell.Interop.VSADDRESULT[] -> int
Public Function AddItem (itemidLoc As UInteger, dwAddItemOperation As VSADDITEMOPERATION, pszItemName As String, cFilesToOpen As UInteger, rgpszFilesToOpen As String(), hwndDlgOwner As IntPtr, pResult As VSADDRESULT()) As Integer

参数

itemidLoc
UInt32

中要添加的项的容器文件夹标识符。 应为 VSITEMID_ROOT 或其他有效的项标识符。 请参见枚举 VSITEMID 。 请注意,此参数当前被忽略,因为仅支持将项添加为项目节点的子节点。 支持文件夹概念的项目将需要添加与相对应的项 itemidLoc

dwAddItemOperation
VSADDITEMOPERATION

中应用于新创建的项的操作。 请参见枚举 VSADDITEMOPERATION

pszItemName
String

中要添加的项的名称。

cFilesToOpen
UInt32

中中的项数 rgpszFilesToOpen 。 可以为零。 如果 dwAddItemOperation 为或 VSADDITEMOP_OPENDIRECTORY,则此必须为 1 VSADDITEMOP_CLONEFILE 。 如果 VSADDITEMOP_RUNWIZARD 为,则它必须为1或2。

rgpszFilesToOpen
String[]

[size_is (cFilesToOpen) ]指向文件名的指针的数组 OLESTR 。 如果 dwAddItemOperationVSADDITEMOP_CLONEFILE 或 VSADDITEMOP_OPENDIRECTORY,则数组中 () 的第一项 rgpszFilesToOpen[0] 是要克隆的文件的名称或要打开的目录。 如果是 VSADDITEMOP_RUNWIZARD ,则 () 的第一项 rgpszFilesToOpen[0] 是要运行的向导的名称,第二项 (rgpszFilesToOpen[1]) 是用户提供的与 (相同 pszItemName 的文件名。

hwndDlgOwner
IntPtr

nativeint

中"添加项" 对话框的句柄。

pResult
VSADDRESULT[]

[out,retval]一个指向枚举的指针 VSADDRESULT ,该枚举指示该项是否已成功添加到项目。

返回

Int32

如果该方法成功,则它会返回 S_OK。 如果该方法失败,则会返回错误代码。

注解

COM 签名

从 vsshell:

HRESULT IVsProject::AddItem(  
   [in] VSITEMID itemidLoc,  
   [in] VSADDITEMOPERATION dwAddItemOperation,  
   [in] LPCOLESTR pszItemName,  
   [in] ULONG cFilesToOpen,  
   [in, size_is(cFilesToOpen)] LPCOLESTR rgpszFilesToOpen[],  
   [in] HWND hwndDlgOwner,  
   [out, retval] VSADDRESULT * pResult  
);  

" 添加项 " 对话框将使用此方法。 方法可以创建新项、添加现有文件或导致运行 " 添加项 向导"。

此方法只应从 UI 线程中调用,否则将引发 COMException

适用于