Hola,
Si no estoy equivocado y se trata de borrar un archivo del disco duro podrías utilizar antes de la función que utilizes ahora para borrar el archivo ("Remove " no podría yo usarla, tendría que usar "DeleteFileA" u otra cosa), digo, que antes de borrar el archivo mediante una ruta "relativa" (si a eso te refieres con ruta "variable") podría funcionarte si utilizaras la función "SetCurrentDir", de forma que el directorio "activo" pasara a ser aquél en que se encuentra el archivo a borrar. Quiere decirse que algo así parece funcionar bien:
Código:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
SetCurrentDir("C:\\");
DeleteFileA("archivo.txt");
}
Siendo así que lo que pasamos como parámetro a la función "DeleteFileA" es una ruta "relativa" de un archivo... relativa al directorio "activo", que antes establecimos debidamente.