Поделиться через


Функция SccSetOption

Эта функция задает параметры, управляющие поведением подключаемого модуля управления версиями.

Синтаксис

SCCRTN SccSetOption(
   LPVOID pvContext,
   LONG   nOption,
   LONG   dwVal
);

Параметры

pvContext

[in] Структура контекста подключаемого модуля управления версиями.

nOption

[in] Заданный параметр.

dwVal

[in] Параметры параметра.

Возвращаемое значение

Реализация подключаемого модуля управления версиями этой функции должна возвращать одно из следующих значений:

значение Описание
SCC_OK Параметр был успешно установлен.
SCC_I_SHARESUBPROJOK Возвращается, если nOption он был SCC_OPT_SHARESUBPROJ , и подключаемый модуль управления версиями позволяет интегрированной среде разработки задать целевую папку.
SCC_E_OPNOTSUPPORTED Параметр не задан и не следует полагаться на нее.

Замечания

Интегрированная среда разработки вызывает эту функцию для управления поведением подключаемого модуля управления версиями. Первый параметр , nOptionуказывает значение, которое устанавливается, а второе , dwValуказывает, что делать с этим значением. Подключаемый модуль сохраняет эти сведения, связанные с интегрированной pvContext``, среде разработки, должен вызывать эту функцию после вызова SccInitialize (но не обязательно после каждого вызова SccOpenProject).

Сводка по параметрам и их значениям:

nOption dwValue Description
SCC_OPT_EVENTQUEUE SCC_OPT_EQ_DISABLE

SCC_OPT_EQ_ENABLE
Включает или отключает фоновую очередь событий.
SCC_OPT_USERDATA Произвольное значение Указывает значение пользователя, передаваемое функции обратного вызова OPTNAMECHANGEPFN .
SCC_OPT_HASCANCELMODE SCC_OPT_HCM_NO

SCC_OPT_HCM_YES
Указывает, поддерживает ли интегрированная среда разработки отмену операции.
SCC_OPT_NAMECHANGEPFN Указатель на функцию обратного вызова OPTNAMECHANGEPFN Задает указатель на функцию обратного вызова с изменением имени.
SCC_OPT_SCCCHECKOUTONLY SCC_OPT_SCO_NO

SCC_OPT_SCO_YES
Указывает, разрешает ли интегрированная среда разработки извлечение файлов вручную (через пользовательский интерфейс системы управления версиями) или должна ли она быть извлечена только через подключаемый модуль управления версиями.
SCC_OPT_SHARESUBPROJ Н/П Если подключаемый модуль управления версиями позволяет интегрированной среде разработки указать локальную папку проекта, подключаемый модуль возвращается SCC_I_SHARESUBPROJOK.

SCC_OPT_EVENTQUEUE

Если nOption это SCC_OPT_EVENTQUEUEтак, интегрированная среда разработки отключается (или повторно включает) фоновую обработку. Например, во время компиляции интегрированная среда разработки может указать подключаемому модулю управления версиями остановить бездействующий процесс любой операции. После компиляции будет повторно включить фоновую обработку, чтобы сохранить очередь событий подключаемого модуля в актуальном состоянии. В соответствии со SCC_OPT_EVENTQUEUE значением nOption, есть два возможных значения для dwVal, а именно и SCC_OPT_EQ_ENABLE SCC_OPT_EQ_DISABLE.

SCC_OPT_HASCANCELMODE

Если значение имеет nOption значение SCC_OPT_HASCANCELMODE, интегрированная среда разработки позволяет пользователям отменять длительные операции. SCC_OPT_HCM_NO Параметр dwVal (по умолчанию) указывает, что интегрированная среда разработки не имеет режима отмены. Подключаемый модуль управления версиями должен предложить собственную кнопку "Отмена", если он хочет, чтобы пользователь мог отменить. SCC_OPT_HCM_YES указывает, что интегрированная среда разработки предоставляет возможность отмены операции, поэтому подключаемый модуль SCC не должен отображать собственную кнопку "Отмена". Если интегрированная среда разработки задана, она готова реагировать и DOCANCEL SCC_MSG_STATUS отправлять сообщения в функцию обратного lpTextOutProc вызова (см. LPTEXTOUTPROC).dwVal SCC_OPT_HCM_YES Если интегрированная среда разработки не задает эту переменную, подключаемый модуль не должен отправлять эти два сообщения.

SCC_OPT_NAMECHANGEPFN

Если для параметра nOption задано SCC_OPT_NAMECHANGEPFNзначение , и подключаемый модуль управления версиями и интегрированная среда разработки позволяют ей, подключаемый модуль может фактически переименовать или переместить файл во время операции управления версиями. Будет dwVal задан указатель функции типа OPTNAMECHANGEPFN. Во время операции управления версиями подключаемый модуль может вызвать эту функцию, передав три параметра. Это старое имя (с полным путем) файла, новое имя (с полным путем) этого файла, а также указатель на информацию, которая имеет отношение к интегрированной среде разработки. Интегрированная среда разработки отправляет этот последний указатель путем вызова SccSetOption с nOption заданным значением SCC_OPT_USERDATAdwVal указанием данных. Поддержка этой функции является необязательной. Подключаемый модуль VSSCI, использующий эту возможность, должен инициализировать ее указатель функций и переменные пользовательских NULLданных, и он не должен вызывать функцию переименования, если она не была предоставлена. Оно также должно быть готово к удержанию значения, которое было дано, или изменить его в ответ на новый вызов SccSetOption. Это не произойдет в середине командной операции управления версиями, но это может произойти между командами.

SCC_OPT_SCCCHECKOUTONLY

Если задано SCC_OPT_SCCCHECKOUTONLYзначение nOption, интегрированная среда разработки указывает, что файлы в текущем открытом проекте никогда не должны быть извлечены вручную с помощью пользовательского интерфейса системы управления версиями. Вместо этого файлы должны быть извлечены только с помощью подключаемого модуля управления версиями под элементом управления IDE. Если dwValue задано значение SCC_OPT_SCO_NO, это означает, что файлы должны обрабатываться обычно подключаемым модулем и могут быть извлечены через пользовательский интерфейс системы управления версиями. Если dwValue задано значение SCC_OPT_SCO_YES, то только подключаемый модуль разрешен для получения файлов, а пользовательский интерфейс системы управления версиями не должен вызываться. Это касается ситуаций, когда интегрированная среда разработки может иметь "псевдофайлы", которые имеют смысл проверить только через интегрированную среду разработки.

SCC_OPT_SHARESUBPROJ

Если nOption задано значение SCC_OPT_SHARESUBPROJ, интегрированная среда разработки проверяет, может ли подключаемый модуль управления версиями использовать указанную локальную папку при добавлении файлов из системы управления версиями. Значение dwVal параметра не имеет значения в этом случае. Если подключаемый модуль позволяет интегрированной среде разработки указать локальную папку назначения, где файлы будут добавлены из системы управления версиями при вызове SccAddFromScc , подключаемый модуль должен вернуться SCC_I_SHARESUBPROJOK при вызове SccSetOption функции. Затем интегрированная среда разработки использует lplpFileNames параметр функции для передачи SccAddFromScc в папку назначения. Подключаемый модуль использует папку назначения для размещения файлов, добавленных из системы управления версиями. Если подключаемый модуль не возвращается SCC_I_SHARESUBPROJOK при SCC_OPT_SHARESUBPROJ установке параметра, интегрированная среда разработки предполагает, что подключаемый модуль может добавлять файлы только в текущую локальную папку.

См. также