Доброго времени суток!
Стоит задача: если файл есть, то открыть и записать в текущей кодировке. Если файла нет, то создать и записать его в кодировке UTF-8
var
  INI: TMemIniFile;
begin
  try
    // Если кодировки не совпадает, то будет ошибка с "падением" программы
    if FileExists(sFile) then INI := TMemIniFile.Create(sFile) else INI := TMemIniFile.Create(sFile, TEncoding.UTF8);
    try
      INI.WriteString('Settings', 'Position', Position);
      INI.UpdateFile;
    except
    end;
  finally
    FreeAndNil(INI);
  end;
end;
Явно что-то делаю не так.