![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
| Ver Resultados de Encuesta: Calificación | |||
| Bestial |
|
1 | 25,00% |
| ... |
|
1 | 25,00% |
| Normal |
|
1 | 25,00% |
| ... |
|
0 | 0% |
| Malo |
|
1 | 25,00% |
| Encuesta de Elección Múltiple. Votantes: 4. Tú no puedes votar en esta encuesta | |||
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
Nota importante hay que poner en cualquiera de las clausulas USES, comobj.
Con esto ya algunos tendremos como terminar nuestro, proposito de compactar las bases de datos con contraseña. Para compactar una Base de Datos en Access var Dir: string; // contiene el directorio // en dónde se encuentra el fichero de datos function GetEngine(var DbEngine: Variant): Boolean; begin Result := False; try DbEngine := CreateOleObject('Dao.DbEngine.35'); // Para Access'97 except try DbEngine := CreateOleObject('Dao.DbEngine.36'); // Para Access 2000 except ShowMessage('No es posible inicializar el DAO.'#13 + 'Microsoft DAO debe de estar instalado en este equipo.'#13 + 'Para instalarlo, debes saber que forma parte de '+ 'MS Access, Visual Basic, MS Office, etc.'); Exit; end; end; Result := VarType(DbEngine) = VarDispatch; end; function CompactDataBaseDao(DbAccessName: String): Boolean; var DbEngine: Variant; TmpFile: String; begin Result := False; if Dir = '' then Exit; TmpFile := Dir + 'TmpAccess.Mdb'; if Pos( '.MDB', UpperCase(DbAccessName)) = 0 then DbAccessName := DbAccessName + '.MDB'; if not FileExists(DbAccessName) then Exit; try if not GetEngine(DbEngine) then Exit; if FileExists(TmpFile) then DeleteFile(TmpFile); // Antes de compactar la Base de Datos, ésta se repara. DbEngine.CompactDataBase(DbAccessName, TmpFile); DeleteFile(DbAccessName); RenameFile(TmpFile, DbAccessName); // En caso de caida del sistema aquí, tendremos la base compactada en TmpFile. Result := True; except Exit; end; end; Nota: Esta parte es para compactar las mdb sin contraseña: DbEngine.CompactDataBase(DbAccessName, TmpFile);. Y esta otra es para las que tienen contraseña: DbEngine.CompactDataBase(DbAccessName, TmpFile, NULL, 0, ';pwd=password');. Esta ultima parte es gracias a nuestros amigos: delphi.com.ar y Rox77. Espero les funcione a mucha gente al igual que a un servidor... ![]() Saludos y Gracias.....
__________________
Have a nice day :) |
|
#2
|
|||
|
|||
|
Hola,
Lo he probado y me funciona correctamente en Windows XP, pero al compactar con Windows Millenium me da un error. Alguien sabe por que?
__________________
Dave |
|
#3
|
||||
|
||||
|
Sería buenísimo saber cuál es el error
![]()
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
|
|
#4
|
|||
|
|||
|
Mejor si
Explico un poco mejor. El ordenador del cliente tiene Windows Millenium y Office XP. La base de datos tiene contraseña. Entonces el error se produce al compactar la base de datos (Datatype conversion error). Pero si lo compacto desde access no hay ningun problema.
__________________
Dave |
|
#5
|
|||
|
|||
|
Lo explico mas detalladamente, a ver si alguien encuentra la solucion.
Uso el codigo indicado por pgraciap. Entonces cuando ejecuta la linea DbEngine.CompactDataBase(DbAccessName, TmpFile, NULL, 0, ';pwd=password'); me indica el error "Datatype conversion error" Alguien tiene una solucion? En XP funciona perfectamente y desde access con cualquier version funciona bien.
__________________
Dave |
|
#6
|
|||
|
|||
|
Ya probaste instalar las actualizaciones del DAO/Access podrias dar un poco mas de datos en cuanto a error???
Saludos...
__________________
Have a nice day :) |
|
#7
|
|||
|
|||
|
DAO / Access se instala con la aplicacion y es el version 2.5 (la que he encontrado).
No se que mas explicar del error porque no se mas aparece ese error al compactar la base de datos, pero si la compacto con access todo funciona bien.
__________________
Dave |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Crystal y SQL 2000 contraseña del sa | jano | Varios | 2 | 28-11-2005 18:02:09 |
| Usuario y contraseña con ADOconnection | Gelmin | Conexión con bases de datos | 3 | 27-09-2005 08:42:48 |
| Ingreso al form mediante contraseña o sin ella | Pablo Carlos | Varios | 2 | 25-07-2005 17:53:15 |
| Bases de datos con contraseña | PTW | Conexión con bases de datos | 2 | 28-07-2004 12:00:52 |
| Compactar MDB con contraseña | Fernando | Conexión con bases de datos | 2 | 29-11-2003 18:56:47 |
|