PDA

Ver la Versión Completa : password en codigo


soloriv
27-10-2004, 01:41:44
Hola y gracias, quisiera si alguien me puede ayudar a encontrar una forma "segura" de poner claves a tablas de tipo paradox, solo algunas de ellas, de un conjunto de tablas. Con codigo no en diseño usando los componentes que sean necesarios si es un passworddlg o algun otro.
Saludos

Tcmn
13-11-2004, 00:54:15
Hasta donde yo se Paradox no es inviolable, pues usando una que otra clavecilla que anda rondado por ahi puedes abrirlas. Pero si quieres ponerles claves desde codigo aqui esta este procedimiento:
uses
Bde, SysUtils, dbtables, windows;


function StrToOem(const AnsiStr: string): string;
begin
SetLength(Result, Length(AnsiStr));
if Length(Result) 0 then
CharToOem(PChar(AnsiStr), PChar(Result));
end;

function TablePasswort(var Table: TTable; password: string): Boolean;
var
pTblDesc: pCRTblDesc;
hDb: hDBIDb;
begin
Result := False;
with Table do
begin
if Active and (not Exclusive) then Close;
if (not Exclusive) then Exclusive := True;
if (not Active) then Open;
hDB := DBHandle;
Close;
end;
GetMem(pTblDesc, SizeOf(CRTblDesc));
FillChar(pTblDesc^, SizeOf(CRTblDesc), 0);
with pTblDesc^ do
begin
StrPCopy(szTblName, StrToOem(Table.TableName));
szTblType := szParadox;
StrPCopy(szPassword, StrToOem(Password));
bPack := True;
bProtected := True;
end;
if DbiDoRestructure(hDb, 1, pTblDesc, nil, nil, nil, False) DBIERR_NONE then Exit;
if pTblDesc nil then FreeMem(pTblDesc, SizeOf(CRTblDesc));
Result := True;
end;

Fuente:http://www.swissdelphicenter.ch

roman
13-11-2004, 01:26:41
Hasta donde yo se Paradox no es inviolable

De hecho, con las palabras adecuadas, el primer enlace que da un conocido buscador nos devuelve la contraseña universal que abre cualquier tabla Paradox.

Increiblemente hay algunos (http://www.lostpassword.com/paradox.htm) que osan cobrar 45 dólares por una aplicación para recuperar contraseñas de tablas Paradox.

En fin, concuerdo con Tcmn, y pienso que intentar proteger tu sistema con este método sólo te hará perder el tiempo en programar algo que no tiene ningún futuro.

// Saludos