SccDiff (Función)
Esta función establece (u opcionalmente sólo comprueba) las diferencias entre el archivo actual (en el disco local) y la versión última registrada en el sistema de control de código fuente.
SCCRTN SccDiff(
LPVOID pvContext,
HWND hWnd,
LPCSTR lpFileName,
LONG fOptions,
LPCMDOPTS pvOptions
);
Parámetros
pvContext
[in] La estructura del contexto del complemento de control de código fuente.hWnd
[in] Un identificador de la ventana del IDE que el complemento de control de código fuente puede utilizar como elemento primario para cualquier cuadro de diálogo que proporciona.lpFileName
[in] Nombre de archivo para el que se solicita la diferencia.fOptions
[in] Marcas de comando. Vea las notas de detalles.pvOptions
[in] Opciones enchufe-en-específicas de control de código fuente.
Valor devuelto
La implementación del complemento de control de código fuente de esta función es esperada devolver uno de los siguientes valores:
Valor |
Descripción |
---|---|
SCC_OK |
La copia y la versión de servidor de rendimiento son idénticas. |
SCC_I_FILESDIFFERS |
La copia de trabajo difiere de la versión bajo control de código fuente. |
SCC_I_RELOADFILE |
Un archivo o un proyecto necesita volver a cargarse. |
SCC_E_FILENOTCONTROLLED |
el archivo no está bajo control de código fuente. |
SCC_E_NOTAUTHORIZED |
No se permite al usuario realizar esta operación. |
SCC_E_ACCESSFAILURE |
Hubo un problema que tiene acceso al sistema de control de código fuente, probablemente debido a problemas de red o de contención. se recomienda un intento. |
SCC_E_NONSPECIFICERROR |
Error no concreto; la diferencia de archivo no se recopiló. |
SCC_E_FILENOTEXIST |
El archivo local no encontrada. |
Comentarios
Esta función sirve para dos propósitos diferentes. De forma predeterminada, muestra una lista de cambios en un archivo. El complemento de control de código fuente se abre su propia ventana, en cualquier formato elija, mostrar las diferencias entre el archivo de usuario en el disco y la última versión del archivo del control de código fuente.
Alternativamente, el IDE puede necesitar simplemente determinar si un archivo ha cambiado. Por ejemplo, el IDE necesite determinar si es seguro desproteger un archivo sin información del usuario. En ese caso, el IDE pasa el indicador de SCC_DIFF_CONTENTS . El complemento de control de código fuente debe comprobar el archivo en el disco, byte por byte, para el archivo bajo control de código fuente y devolver un valor que indica si los dos archivos son diferentes sin mostrar nada al usuario.
Optimizar el rendimiento, el complemento de control de origen puede utilizar una alternativa basada en una suma de comprobación o timestamp en lugar de la comparación byte a byte denominada para por SCC_DIFF_CONTENTS: estos formularios de comparación son obviamente más rápidos pero menos predecibles. No todos los sistemas de control de código fuente pueden admitir estos métodos alternativos de comparación, y el complemento puede tener que recurrir a una comparación del contenido. Todos los complementos de control de código fuente deben, como mínimo, admitir una comparación del contenido.
Nota
Los indicadores rápidos difference son mutuamente excluyentes.Es válida no pasar ningún indicador, pero no es válida pasar simultáneamente más de uno.SCC_DIFF_QUICK_DIFF, que es una máscara que combina todos los marcadores, se puede utilizar para probar, sólo se debería pasar nunca como parámetro.
fOption |
Significado |
---|---|
SCC_DIFF_IGNORECASE |
Comparación sin distinción entre mayúsculas y minúsculas (se puede utilizar para la diferencia rápida o visual). |
SCC_DIFF_IGNORESPACE |
Omite el espacio en blanco (se puede utilizar para la diferencia rápida o visual). |
SCC_DIFF_QD_CONTENTS |
Compara automáticamente el archivo, byte por byte. |
SCC_DIFF_QD_CHECKSUM |
Compara automáticamente el archivo con una suma de comprobación cuando es. Si no se admite, recurre a una comparación de contenido. |
SCC_DIFF_QD_TIME |
Compara automáticamente el archivo con la marca de tiempo cuando es. Si no se admite, recurre a una comparación de contenido. |
Vea también
Conceptos
Funciones de la API del complemento de control de código fuente