Hola.
Pues buscando por aqui y por allá me encontré con una solución para incluir parametros a la aplicación, inicialmente pensé en usar la función FindCmdLineSwitch() pero no pude obtener los siguientes datos depues del parámetro switch
.
Sin embargo me encontré con esta función
Funcion creada por Mike Heydon
Tomada de:
http://www.delphi300...le_1924.asp?SK=
function GetParamVal(const TaggedParm : string;
IgnoreCase : boolean = true) : string;
var Retvar : string;
i,Len : integer;
Comp1,Comp2 : string;
begin
RetVar := '';
Comp1 := TaggedParm + '=';
if IgnoreCase then Comp1 := UpperCase(Comp1);
Len := length(Comp1);
for i := 1 to ParamCount do begin
Comp2 := copy(ParamStr(i),1,Len);
if IgnoreCase then Comp2 := UpperCase(Comp2);
if (Comp1 = Comp2) then begin
RetVar := copy(ParamStr(i),Len + 1,length(ParamStr(i)));
break;
end;
end;
Result := RetVar;
end;
Paso los parámetros a la aplicación de esta forma
FBBackRestore /DB=C:\DATOS\BASE.FDB /BK=C:\DATOS\BASE.FBK /SN=MISERVIDOR /U=MIUSUARIO /PW=MIPASSWORD
Donde:
/DB Nombre de la Base de Datos (Ruta y nombre)
/BK Nombre de archivo respaldo (Ruta y Nombre)
/SN Nombre del servidor
/U Usuario
/PW Contraseña
Y en el evento OnShow de la forma hago esto:
procedure TForm1.FormShow(Sender: TObject);
begin
if ParamCount > 0 then begin
edDB.Text := GetParamVal('/DB');
edDBBK.Text := GetParamVal('/BK');
edServerName.Text := GetParamVal('/SN');
edUser.Text := GetParamVal('/U');
edPassw.Text := GetParamVal('/PW');
end;
end;
A ver que les parece
Salud OS