Yo concretamente, hago lo siguiente, almaceno las fotos en la BD y entonces solamente tengo que mostrarla en un control de base de datos para imágenes, pongamos un DbImage, no hay que hacer nada especial pues por cada persona existe una foto en el mismo registro.
almaceno las fotos en una carpeta, mas propio para productos que para personas, en el registro tengo un campo que indica el nombre de la foto en el disco y la ubicación, simplemente la cargo:
Código Delphi
[-]procedure TfrPVP.pg1Change(Sender: TObject);
begin
if (pg1.ActivePage = TbFoto) and (DmPrix.IBDtsPVPFOTOPRODUCTO.AsString <>'' )then
begin
try
fotoproducto.Picture.LoadFromFile('\\servidor\xx\datosfb\fotos\'+DmPrix.IBDtsPVPFOTOPRODUCTO.AsStrin g+'.jpg');
except
ShowMessage('Atención:La imagen no existe o no pudo cargarse.');
end;
end
else
fotoproducto.Picture.LoadFromFile('\\servidor\xx\datosfb\fotos\Nohay.jpg');
end;
Nohay, es una imagen que yo mismo he construido con una x en tamaño grande y color rojo.
Un Saludo.