Hola.
Deberías de hacer algún cambio para que antes de llamar al StrToCurr... quitarle los puntos a la variable ObjetoaValidar.
Por ejemplo...
Código Delphi
[-]
procedure ValidarSoloDinero(ObjetoaValidar: String; NombreObjetoaValidar: String);
begin
try
StringReplace(ObjetoaValidar,'.','',[rfReplaceAll]);
StrToCurr(ObjetoaValidar);
except
raise Exception.Create('Atención el : '+ NombreObjetoaValidar + ' solo permite formato de dinero por favor revise y corriga');
end;
end;