Proteger aplicación en Access

¿Cómo puedo habilitar/deshabilitar la tecla "Shift" para tener protegida la aplicación en Access?

1 respuesta

Respuesta
1
Si lo que quieres es evitar que se omita el Inicio de access (esto se consigue manteniendo pulsada Shift), puedes usar la propiedad AllowByPassKey para especificar si la tecla MAYUS esta activada para saltar las propiedades de Inicio y la macro autoexec.
Ejemplo de la propiedad AllowBypassKey
En el siguiente ejemplo se muestra un procedimiento llamado SetBypassProperty que pasa el nombre de la propiedad que se va a establecer, su tipo de datos y los valores que se deseen. El procedimiento de propósito general ChangeProperty intenta establecer la propiedad AllowBypassKey y, si no la encuentra, usa el método CreateProperty para anexarla a la colección Properties. Esto es necesario, ya que esta propiedad no aparece en la colección Properties hasta que se haya agregado.
Sub SetBypassProperty()
Const DB_Boolean As Long = 1
ChangeProperty "AllowBypassKey", DB_Boolean, False
End Sub
Function ChangeProperty(strPropName As String, varPropType As Variant, varPropValue As Variant) As Integer
Dim dbs As Object, prp As Variant
Const conPropNotFoundError = 3270
Set dbs = CurrentDb
On Error GoTo Change_Err
dbs.Properties(strPropName) = varPropValue
ChangeProperty = True
Change_Bye:
Exit Function
Change_Err:
If Err = conPropNotFoundError Then ' No se encontró la propiedad.
Set prp = dbs.CreateProperty(strPropName, _
varPropType, varPropValue)
dbs.Properties.Append prp
Resume Next
Else
' Error desconocido.
ChangeProperty = False
Resume Change_Bye
End If
End Function
Puedes usar el procedimiento en el evento Al abrir de tu formulario principal (o cualquier otro) para determinar el valor True o False de AllowBypassKey, en caso de que fuera True (se omitió el inicio) tomar las medidas oportunas.
El único inconveniente es que es fácil deshacer una macro, y que hay código escrito en VB para deshacer las opciones de Inicio.
Por otro lado, lo mejor para asegurar una BD es usar el Asistente para permisos y usuarios.
Si no quieres trabajar sobre el código anterior, puedes descargar una .mdb desde:
http://members.shaw.ca/glenk/access2000.html
Te permite gestionar esto mismo solo con introducir la ruta a la BD que quieras.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas