SccAdd 函数

此函数将新文件添加到源代码管理系统。

语法

SCCRTN SccAdd(
   LPVOID    pvContext,
   HWND      hWnd,
   LONG      nFiles,
   LPCSTR*   lpFileNames,
   LPCSTR    lpComment,
   LONG*     pfOptions,
   LPCMDOPTS pvOptions
);

参数

pvContext

[in]源代码管理插件上下文结构。

hWnd

[in]源代码管理插件可以作为其提供的任何对话框的父级的 IDE 窗口的句柄。

nFiles

[in]所选文件数,如数组中 lpFileNames 给定的那样添加到当前项目。

lpFileNames

[in]要添加的文件的完全限定本地名称数组。

lpComment

[in]要应用于要添加的所有文件的注释。

pfOptions

[in]每个文件提供的命令标志数组。

pvOptions

[in]特定于源代码管理插件的选项。

返回值

此函数的源代码管理插件实现应返回以下值之一:

说明
SCC_OK 添加操作成功。
SCC_E_FILEALREADYEXISTS 所选文件已在源代码管理下。
SCC_E_TYPENOTSUPPORTED 源代码管理系统不支持文件类型(例如二进制文件)。
SCC_E_OPNOTSUPPORTED 源代码管理系统不支持此操作。
SCC_E_ACCESSFAILURE 访问源代码管理系统时出现问题,可能是因为网络或争用问题。 建议重试。
SCC_E_NOTAUTHORIZED 不允许用户执行此操作。
SCC_E_NONSPECIFICERROR 非特定故障;添加未执行。
SCC_I_OPERATIONCANCELED 操作在完成之前已取消。
SCC_I_RELOADFILE 需要重新加载文件或项目。
SCC_E_FILENOTEXIST 找不到本地文件。

注解

此处通常 fOptions 由数组替换, pfOptions每个文件有一个 LONG 选项规范。 这是因为文件类型可能因文件而异。

注意

为同一文件指定和SCC_FILETYPE_TEXTSCC_FILETYPE_BINARY选项无效,但指定两者都无效。 设置两者都不与设置 SCC_FILETYPE_AUTO相同,在这种情况下,源代码管理插件会自动检测文件类型。

下面是数组中使用的 pfOptions 标志列表:

选项 含义
SCC_FILETYPE_AUTO 0x00 源代码管理插件应检测文件类型。
SCC_FILETYPE_TEXT 0x01 指示 ASCII 文本文件。
SCC_FILETYPE_BINARY 0x02 指示 ASCII 文本以外的文件类型。
SCC_ADD_STORELATEST 0x04 仅存储文件的最新副本,不存储增量。
SCC_FILETYPE_TEXT_ANSI 0x08 将文件视为 ANSI 文本。
SCC_FILETYPE_UTF8 0x10 将文件视为 UTF8 格式的 Unicode 文本。
SCC_FILETYPE_UTF16LE 0x20 将文件视为 UTF16 Little Endian 格式的 Unicode 文本。
SCC_FILETYPE_UTF16BE 0x40 将文件视为 UTF16 Big Endian 格式的 Unicode 文本。

另请参阅