Capability Flags


This article applies to Visual Studio 2015. If you're looking for the latest Visual Studio documentation, see Visual Studio documentation. We recommend upgrading to the latest version of Visual Studio. Download it here

The SCC_CAP_xxx flags are bit flags used to indicate the capabilities of a source control plug-in. The SCC_EXCAP_xxx flags are incremental flags that indicate extended capabilities and resolve to integer values.

Capability Code Value Description
SCC_CAP_REMOVE 0x00000001L Supports the SccRemove and command.
SCC_CAP_RENAME 0x00000002L Supports the SccRename and command.
SCC_CAP_DIFF 0x00000004L Supports the SccDiff and command.
SCC_CAP_HISTORY 0x00000008L Supports the SccHistory and command.
SCC_CAP_PROPERTIES 0x00000010L Supports the SccProperties and command.
SCC_CAP_RUNSCC 0x00000020L Supports the SccRunScc and command.
SCC_CAP_GETCOMMANDOPTIONS 0x00000040L Supports the SccGetCommandOptions and command.
SCC_CAP_QUERYINFO 0x00000080L Supports the SccQueryInfo and command.
SCC_CAP_GETEVENTS 0x00000100L Supports the SccGetEvents and command.
SCC_CAP_GETPROJPATH 0x00000200L Supports the SccGetProjPath and command.
SCC_CAP_ADDFROMSCC 0x00000400L Supports the SccAddFromScc and command.
SCC_CAP_COMMENTCHECKOUT 0x00000800L Supports a comment on checkout.
SCC_CAP_COMMENTCHECKIN 0x00001000L Supports a comment on checkin.
SCC_CAP_COMMENTADD 0x00002000L Supports a comment on Add.
SCC_CAP_COMMENTREMOVE 0x00004000L Supports a comment on Remove.
SCC_CAP_TEXTOUT 0x00008000L Writes text to an IDE-provided output function.
SCC_CAP_ADD_STORELATEST 0x00200000L Supports storing files without deltas.
SCC_CAP_HISTORY_MULTFILE 0x00400000L Supports multiple file history.
SCC_CAP_IGNORECASE 0x00800000L Supports case-insensitive file comparison.
SCC_CAP_IGNORESPACE 0x01000000L Supports file comparison that ignores white space.
SCC_CAP_POPULATELIST 0x02000000L Supports finding extra files.
SCC_CAP_COMMENTPROJECT 0x04000000L Supports comments on create project.
SCC_CAP_DIFFALWAYS 0x10000000L Supports diff in all states if under control.
SCC_CAP_GET_NOUI 0x20000000L Plug-in does not support a UI for Get, but IDE may still call SccGet.
SCC_CAP_REENTRANT 0x40000000L Plug-in is reentrant and thread-safe. In version 1.0, no plug-ins were assumed to be reentrant and thread-safe. If a 1.1 plug-in sets this bit, the host is allowed to open multiple projects in parallel.

Capability Bits added in Version 1.2

Capability Code Value Description
SCC_CAP_CREATESUBPROJECT 0x00010000L Supports the SccCreateSubProject.
SCC_CAP_GETPARENTPROJECT 0x00020000L Supports the SccGetParentProjectPath.
SCC_CAP_BATCH 0x00040000L Supports the SccBeginBatch and SccEndBatch.
SCC_CAP_DIRECTORYSTATUS 0x00080000L Supports the SccDirQueryInfo.
SCC_CAP_DIRECTORYDIFF 0x00100000L Supports the SccDirDiff.
SCC_CAP_MULTICHECKOUT 0x08000000L Supports multiple checkouts on a file and the SccIsMultiCheckoutEnabled.
SCC_CAP_SCCFILE 0x80000000L Supports the MSSCCPRJ.SCC file (subject to user/administrator override) and the SccWillCreateSccFile.

Capability Bits Added in Version 1.3

These flags are passed one at a time to the SccGetExtendedCapabilities function to determine whether the capability is supported.

Extended Capability Code Value Description
SCC_EXCAP_BACKGROUND_GET 2 Supports the SccBackgroundGet.
SCC_EXCAP_ENUM_CHANGED_FILES 3 Supports the SccEnumChangedFiles.
SCC_EXCAP_POPULATELIST_DIR 4 Supports finding extra directories.
SCC_EXCAP_QUERYCHANGES 5 Supports enumerating file changes.
SCC_EXCAP_ADD_FILES_FROM_SCC 6 Supports the SccAddFilesFromSCC.
SCC_EXCAP_GET_USER_OPTIONS 7 Supports the SccGetUserOption.
SCC_EXCAP_THREADSAFE_QUERY_INFO 8 Supports calling SccQueryInfo on multiple threads.
SCC_EXCAP_REMOVE_DIR 9 Supports the SccRemoveDir function.
SCC_EXCAP_DELETE_CHECKEDOUT 10 Can delete checked-out files.
SCC_EXCAP_RENAME_CHECKEDOUT 11 Can rename checked-out files.

See Also

Source Control Plug-ins