CAtlTransactionManager (clase)
La clase CAtlTransactionManager proporciona un contenedor a las funciones del Administrador de transacciones de kernel (KTM).
Importante
Esta clase y sus miembros no se pueden usar en las aplicaciones que se ejecutan en Windows Runtime.
Sintaxis
class CAtlTransactionManager;
Miembros
Constructores públicos
Nombre | Descripción |
---|---|
~CAtlTransactionManager | Destructor CAtlTransactionManager. |
CAtlTransactionManager | Constructor CAtlTransactionManager. |
Métodos públicos
Nombre | Descripción |
---|---|
Cerrar | Cierra uno de los identificadores de la transacción. |
Confirmar | Solicita que se confirme la transacción. |
Crear | Crea el identificador de la transacción. |
CreateFile | Crea o abre un archivo, una secuencia de archivos o un directorio como una operación de transacción. |
DeleteFile | Elimina un archivo existente como una operación de transacción. |
FindFirstFile | Busca un directorio para un archivo o subdirectorio como una operación de transacción. |
GetFileAttributes | Recupera los atributos del sistema de archivos de un archivo o directorio especificados como una operación de transacción. |
GetFileAttributesEx | Recupera los atributos del sistema de archivos de un archivo o directorio especificados como una operación de transacción. |
GetHandle | Devuelve el identificador de la transacción. |
IsFallback | Determina si las llamadas de reserva están habilitadas. |
MoveFile | Mueve un archivo o un directorio existente, así como sus elementos secundarios, como una operación de transacción. |
RegCreateKeyEx | Crea la clave del Registro especificada y la asocia a una transacción. Si la clave ya existe, la función la abre. |
RegDeleteKey | Elimina una subclave y sus valores de la vista del registro específica de la plataforma especificada como una operación de transacción. |
RegOpenKeyEx | Abre la clave del Registro especificada y la asocia a una transacción. |
Reversión | Solicita que se revierta la transacción. |
SetFileAttributes | Establece los atributos de un archivo o directorio como una operación de transacción. |
Miembros de datos protegidos
Nombre | Descripción |
---|---|
m_bFallback | TRUE si se admite la reserva; en caso contrario, FALSE. |
m_hTransaction | Identificador de la transacción. |
Comentarios
Jerarquía de herencia
Requisitos
Encabezado: atltransactionmanager.h
~CAtlTransactionManager
Destructor CAtlTransactionManager.
virtual ~CAtlTransactionManager();
Comentarios
Durante el procesamiento normal, la transacción se confirma y cierra automáticamente. Si se llama al destructor durante un desenredado de excepciones, la transacción se revierte y se cierra.
CAtlTransactionManager
Constructor CAtlTransactionManager.
CAtlTransactionManager(BOOL bFallback = TRUE, BOOL bAutoCreateTransaction = TRUE);
Parámetros
bFallback
TRUE indica la compatibilidad con reserva. Si se produce un error en la función de transacción, la clase de forma automática llama a la función «no transaccionada». FALSE indica que no hay llamadas de «reserva».
bAutoCreateTransaction
TRUE indica que el identificador de transacciones se crea de forma automática en el constructor. FALSE indica que no.
Comentarios
Cerrar
Cierra el identificador de la transacción.
inline BOOL Close();
Valor devuelto
TRUE si es correcto; en caso contrario, FALSE.
Comentarios
El contenedor llama a la función CloseHandle
. El método se llama automáticamente en el destructor.
Commit
Solicita que se confirme la transacción.
inline BOOL Commit();
Valor devuelto
TRUE si es correcto; en caso contrario, FALSE.
Comentarios
El contenedor llama a la función CommitTransaction
. El método se llama automáticamente en el destructor.
Crear
Crea el identificador de la transacción.
inline BOOL Create();
Valor devuelto
TRUE si es correcto; en caso contrario, FALSE.
Comentarios
El contenedor llama a la función CreateTransaction
. Compruébelo
CreateFile
Crea o abre un archivo, una secuencia de archivos o un directorio como una operación de transacción.
inline HANDLE CreateFile(
LPCTSTR lpFileName,
DWORD dwDesiredAccess,
DWORD dwShareMode,
LPSECURITY_ATTRIBUTES lpSecurityAttributes,
DWORD dwCreationDisposition,
DWORD dwFlagsAndAttributes,
HANDLE hTemplateFile);
Parámetros
lpFileName
Nombre de un objeto que se va a crear o abrir.
dwDesiredAccess
Acceso al objeto, que se puede resumir como lectura, escritura, ambos o ninguno (cero). Los valores más usados son GENERIC_READ
, GENERIC_WRITE
o ambos: GENERIC_READ | GENERIC_WRITE
.
dwShareMode
Modo de uso compartido de un objeto, que se puede leer, escribir, ambos, eliminar, todos ellos o ninguno: 0, FILE_SHARE_DELETE, FILE_SHARE_READ, FILE_SHARE_WRITE.
lpSecurityAttributes
Puntero que apunta a una estructura de SECURITY_ATTRIBUTES que contiene un descriptor de seguridad opcional y también determina si procesos secundarios pueden heredar del identificador devuelto o no. El parámetro puede ser NULL.
dwCreationDisposition
Acción que se va a hacer en los archivos que existen y que no. El parámetro debe ser uno de los siguientes valores, que no se pueden combinar: CREATE_ALWAYS, CREATE_NEW, OPEN_ALWAYS, OPEN_EXISTING o TRUNCATE_EXISTING.
dwFlagsAndAttributes
Los atributos y marcas de archivo. El parámetro puede incluir cualquier combinación de los atributos de archivo disponibles (FILE_ATTRIBUTE_*). Todos los demás atributos del archivo invalidan FILE_ATTRIBUTE_NORMAL. El parámetro puede contener también combinaciones de marcas (FILE_FLAG_*) para controlar el comportamiento de almacenamiento, modos de acceso y otras marcas de propósito especial. Se combinan con cualquier valor de FILE_ATTRIBUTE_*.
hTemplateFile
Identificador válido para un archivo de plantilla con el derecho de acceso GENERIC_READ. El archivo de plantilla proporciona atributos extendidos y atributos de archivo para el archivo que se va a crear. Este parámetro puede ser NULL.
Valor devuelto
Devuelve un identificador que puede usarse para acceder al objeto.
Comentarios
El contenedor llama a la función CreateFileTransacted
.
DeleteFile
Elimina un archivo existente como una operación de transacción.
inline BOOL DeleteFile(LPCTSTR lpFileName);
Parámetros
lpFileName
Nombre del archivo que se va a eliminar.
Comentarios
El contenedor llama a la función DeleteFileTransacted
.
FindFirstFile
Busca un directorio para un archivo o subdirectorio como una operación de transacción.
inline HANDLE FindFirstFile(
LPCTSTR lpFileName,
WIN32_FIND_DATA* pNextInfo);
Parámetros
lpFileName
Directorio o ruta de acceso y el nombre de archivo que se va a buscar. El parámetro puede incluir caracteres comodín, como un asterisco (*) o un signo de interrogación ().
pNextInfo
Puntero que apunta a la estructura WIN32_FIND_DATA que recibe información sobre un archivo o subdirectorio encontrado.
Valor devuelto
Si la función se realiza correctamente, el valor devuelto es un identificador de búsqueda usado en una llamada posterior a FindNextFile
o FindClose
. Si se produce un error en la función o no se encuentran los archivos de la cadena en el parámetro lpFileName, el valor devuelto es INVALID_HANDLE_VALUE.
Comentarios
El contenedor llama a la función FindFirstFileTransacted
.
GetFileAttributes
Recupera los atributos del sistema de archivos de un archivo o directorio especificados como una operación de transacción.
inline DWORD GetFileAttributes(LPCTSTR lpFileName);
Parámetros
lpFileName
Nombre del archivo o directorio.
Comentarios
El contenedor llama a la función GetFileAttributesTransacted
.
GetFileAttributesEx
Recupera los atributos del sistema de archivos de un archivo o directorio especificados como una operación de transacción.
inline BOOL GetFileAttributesEx(
LPCTSTR lpFileName,
GET_FILEEX_INFO_LEVELS fInfoLevelId,
LPVOID lpFileInformation);
Parámetros
lpFileName
Nombre del archivo o directorio.
fInfoLevelId
Nivel de información de atributo que se va a recuperar.
lpFileInformation
Puntero que apunta al búfer que recibe la información de atributo. Tipo de información de atributo que se almacena en este búfer viene determinado por el valor de fInfoLevelId. Si el parámetro fInfoLevelId es GetFileExInfoStandard, el parámetro apunta a una estructura WIN32_FILE_ATTRIBUTE_DATA.
Comentarios
El contenedor llama a la función GetFileAttributesTransacted
.
GetHandle
Devuelve el identificador de la transacción.
HANDLE GetHandle() const;
Valor devuelto
Devuelve el identificador de transacción de una clase. Devuelve NULL si CAtlTransactionManager
no está asociado a un identificador.
Comentarios
IsFallback
Determina si las llamadas de reserva están habilitadas.
BOOL IsFallback() const;
Valor devuelto
Devuelve TRUE es la clase que admite llamadas de reserva. FALSE en caso contrario.
Comentarios
m_bFallback
TRUE si se admite la reserva; en caso contrario, FALSE.
BOOL m_bFallback;
Comentarios
m_hTransaction
Identificador de la transacción.
HANDLE m_hTransaction;
Comentarios
MoveFile
Mueve un archivo o un directorio existente, así como sus elementos secundarios, como una operación de transacción.
inline BOOL MoveFile(LPCTSTR lpOldFileName, LPCTSTR lpNewFileName);
Parámetros
lpOldFileName
Nombre actual del archivo o directorio existente en el equipo local.
lpNewFileName
Nuevo nombre del archivo o directorio. El nombre no puede existir ya. Un nuevo archivo puede encontrarse en otro sistema de archivos o unidad. Un nuevo directorio debe estar en la misma unidad.
Comentarios
El contenedor llama a la función MoveFileTransacted
.
RegCreateKeyEx
Crea la clave del Registro especificada y la asocia a una transacción. Si la clave ya existe, la función la abre.
inline LSTATUS RegCreateKeyEx(
HKEY hKey,
LPCTSTR lpSubKey,
DWORD dwReserved,
LPTSTR lpClass,
DWORD dwOptions,
REGSAM samDesired,
CONST LPSECURITY_ATTRIBUTES lpSecurityAttributes,
PHKEY phkResult,
LPDWORD lpdwDisposition);
Parámetros
hKey
Identificador de una clave del Registro abierta.
lpSubKey
El nombre de una subclave que esta función abre o crea.
dwReserved
Este parámetro está reservado y debe ser cero.
lpClass
Clase definida por el usuario de la clave. Este parámetro se puede ignorar. Este parámetro puede ser NULL.
dwOptions
Este parámetro puede tener uno de los siguientes valores: REG_OPTION_BACKUP_RESTORE, REG_OPTION_NON_VOLATILE o REG_OPTION_VOLATILE.
samDesired
Máscara que especifica los derechos de acceso de la clave.
lpSecurityAttributes
Puntero a una estructura de SECURITY_ATTRIBUTES que determina si el identificador devuelto se puede heredar de procesos secundarios. Si lpSecurityAttributes es NULL, el identificador no puede heredarse.
phkResult
Puntero que apunta a una variable que recibe un identificador de la clave abierta o creada. Si la clave es una de las claves del Registro predefinidas, llame a la función RegCloseKey
después de terminar de usar el identificador.
lpdwDisposition
Puntero que apunta a una variable que recibe uno de los siguientes valores de disposición: REG_CREATED_NEW_KEY o REG_OPENED_EXISTING_KEY.
Valor devuelto
Si la función se ejecuta correctamente, el valor devuelto es ERROR_SUCCESS. Si la función no se ejecuta correctamente, el valor devuelto es un código de error distinto de cero definido en Winerror.h.
Comentarios
El contenedor llama a la función RegCreateKeyTransacted
.
RegDeleteKey
Elimina una subclave y sus valores de la vista del registro específica de la plataforma especificada como una operación de transacción.
inline LSTATUS RegDeleteKeyEx(HKEY hKey, LPCTSTR lpSubKey);
Parámetros
hKey
Identificador de una clave del Registro abierta.
lpSubKey
El nombre de la clave que se va a eliminar.
Valor devuelto
Si la función se ejecuta correctamente, el valor devuelto es ERROR_SUCCESS. Si la función no se ejecuta correctamente, el valor devuelto es un código de error distinto de cero definido en Winerror.h.
Comentarios
El contenedor llama a la función RegDeleteKeyTransacted
.
RegOpenKeyEx
Abre la clave del Registro especificada y la asocia a una transacción.
inline LSTATUS RegOpenKeyEx(
HKEY hKey,
LPCTSTR lpSubKey,
DWORD ulOptions,
REGSAM samDesired,
PHKEY phkResult);
Parámetros
hKey
Identificador de una clave del Registro abierta.
lpSubKey
Nombre de la subclave del Registro que se va a abrir.
ulOptions
Este parámetro está reservado y debe ser cero.
samDesired
Máscara que especifica los derechos de acceso de la clave.
phkResult
Puntero que apunta a una variable que recibe un identificador de la clave abierta o creada. Si la clave es una de las claves del Registro predefinidas, llame a la función RegCloseKey
después de terminar de usar el identificador.
Valor devuelto
Si la función se ejecuta correctamente, el valor devuelto es ERROR_SUCCESS. Si la función no se ejecuta correctamente, el valor devuelto es un código de error distinto de cero definido en Winerror.h
Comentarios
El contenedor llama a la función RegOpenKeyTransacted
.
Reversión
Solicita que se revierta la transacción.
inline BOOL Rollback();
Valor devuelto
TRUE si es correcto; en caso contrario, FALSE.
Comentarios
El contenedor llama a la función RollbackTransaction
.
SetFileAttributes
Establece los atributos de un archivo o directorio como una operación de transacción.
inline BOOL SetFileAttributes(LPCTSTR lpFileName, DWORD dwAttributes);
Parámetros
lpFileName
Nombre del archivo o directorio.
dwAttributes
Atributos de archivo que se van a establecer para el archivo. Para obtener más información, consulte SetFileAttributesTransacted.
Comentarios
El contenedor llama a la función SetFileAttributesTransacted
.