Mi hermano me pregunto lo siguiente: El ha desarrollado una pequeña aplicación en Access y esta buscando algún mecanismo para evitar que el programa sea copiado y ejecutado en otra computadora ¿Sabe Ud. Alguna manera para evitar dichas copias "piratas" del programa? Y a mi me interesa saber si hay forma de abrir programas volqueados en microsoft access para poder utilizar parte de unos programas en algunas aplicaciones que requiero
Gracias
1 Respuesta
Respuesta de telemaco
1
1
telemaco, He trabajado 5 años desarrollando aplicaciones tanto en access...
A varias maneras de evitar copiar tu base de datos, y es comparando un valor del PC. Es decir, puedes leer el volumen del disco, y compararlo con el que tienes en una tabla, o también el serial del procesador o del disco, el problema es cuando la persona que realmente deba tener la aplicación cambia de disco o procesador, deberás ir y retomar el nuevo valor... pero este seria la única manera, porque ya sabes que tu puedes cargarte la bd para donde quieras... Ahora para la segunda pregunta debes ser más especifico, ya que puedes tener una base de datos en access en formato MDE, y aquí por más que las abras NO PUEDES MODIFICAR FORMULARIO, NI INFORMES, NI MACROS, NI MÓDULOS... es más no puedes importarlos a otra Bd... Pero si es Mdb, se podría pero hay que mirar que bloqueos son... ya que puede ser que las tablas están ocultas o tengan algunos atributos, pero muchas veces cuando abres la Bd y mantienes oprimida la tecla SHIFT te deja entrar sin bloqueos, sino este código te puede servir: ************************* Dim Bd as database set Bd = opendatabase("c:\MiBase.Mdb") For I = 0 To Bd.TableDefs.Count - 1 If Bd.TableDefs(I).Attributes = dbHiddenObject Then Bd.TableDefs(I).Attributes = 0 Next I EstablecerPropiedad "StartupShowDBWindow", True, "DB_BOOLEAN" EstablecerPropiedad "AllowFullMenus", True, "DB_BOOLEAN" EstablecerPropiedad "AllowBuiltInToolbars", True, "DB_BOOLEAN" EstablecerPropiedad "StartUpMenuBar", "(predeterminada)", "DB_TEXT" EstablecerPropiedad "AllowShortcutMenus", True, "DB_BOOLEAN" EstablecerPropiedad "StartupForm", "(ninguno)", "DB_TEXT" EstablecerPropiedad "StartupShowStatusBar", True, "DB_BOOLEAN" EstablecerPropiedad "AllowSpecialKeys", True, "DB_BOOLEAN" EstablecerPropiedad "AppTitle", "SOFTCALVENT - MODO HABILITADO", "DB_TEXT" ************************** Ahora la funcion Establecerropiedad seria: ************************** Public Sub EstablecerPropiedad(NomPropiedad As String, ValPropiedad, TipPropiedad As String) Dim MiPropiedad As Object Dim Bd as database set Bd = opendatabase("c:\MiBase.Mdb") On Error Resume Next Bd.Properties(NomPropiedad) = ValPropiedad If Err.Number = 3270 Then Set MiPropiedad = Bd.CreateProperty(NomPropiedad, TipPropiedad, ValPropiedad) Bd.Properties.Append MiPropiedad Set MiPropiedad = Nothing End If End Sub *************************** Att:telemaco