次の方法で共有


SccAdd 関数

この関数では、ソース管理システムに新しいファイルが追加されます。

構文

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

パラメーター

pvContext

[入力] ソース管理プラグインのコンテキスト構造体。

hWnd

[入力] ソース管理プラグインが、提供するすべてのダイアログ ボックスの親として使用できる IDE ウィンドウへのハンドル。

nFiles

[入力] lpFileNames 配列に指定されている、現在のプロジェクトに追加されるように選択されたファイルの数。

lpFileNames

[入力] 追加するファイルの完全修飾ローカル名の配列。

lpComment

[入力] 追加されるすべてのファイルに適用されるコメント。

pfOptions

[入力] ファイルごとに提供されるコマンド フラグの配列。

pvOptions

[入力] ソース管理プラグイン固有のオプション。

戻り値

この関数のソース管理プラグインの実装では、次のいずれかの値が返されることが予期されています。

Value 説明
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 で置き換えられ、ファイルごとに 1 つの LONG オプションが指定されます。 これは、ファイルの種類がファイルによって異なる場合があるためです。

Note

同じファイルに対して SCC_FILETYPE_TEXT オプションと SCC_FILETYPE_BINARY オプションの両方を指定することは無効ですが、どちらも指定しないことは有効です。 どちらも設定しないのは SCC_FILETYPE_AUTO を設定することと同じです。この場合、ソース管理プラグインによってファイルの種類が自動検出されます。

pfOptions 配列で使用されるフラグの一覧を以下に示します。

オプション Value 意味
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 リトル エンディアン形式の Unicode テキストとして扱います。
SCC_FILETYPE_UTF16BE 0x40 ファイルを UTF16 ビッグ エンディアン形式の Unicode テキストとして扱います。

関連項目