veamos
Código:
var Inicio, Fin : String;
FInicio, FFin : TDateTime;
begin
Inicio:='010107';
Fin:='181207';
// pasar a TDateTime
FInicio:=Encode( StrToInt('20'+Copy(Inicio,5,2)), StrToIntCopy(Inicio, 3, 2)), StrToInt(Copy(Inicio, 1, 2)) );
FFin:=Encode( StrToInt('20'+Copy(Fin,5,2)), StrToIntCopy(Fin, 3, 2)), StrToInt(Copy(Fin, 1, 2)) );
// Comparar
if FInicio > FFin then .....
Resumiendo, utiliza la función "Encode" pasándole el año, mes y día, y te devuelve una fecha.
Le sumo '20' porque considero que las fechas son de este siglo, pero para evitar problemas te recomiendo que guardes el año con 4 dígitos.
Para comparar las fechas lo puedes hacer directamente ( if FInicio < FFin) pero teniendo en cuenta que no tengan nada en la parte de la hora. Montándolas como yo lo he hecho no tienen nada, pero si las capturas desde el sistema ( FInicio:=NOW) si puede tener contenido y resultar que dos variables con el mismo día son diferentes porque tienen horas distintas.
También puedes utilizar funciones como DaysBetween...
Nota: el código anterior lo he hecho aquí por tanto puede contener errores. Lo importante es la idea
Saludos,