nesco писал(а):
Galkov, а почему CharLower(PChar(fn));
CharLower(@fn[1]);
Потому-что PChar -- это вам не баб щупать
Это хитрая функция, которая гарантирует НЕ НОЛЬ.
Если строка пустая (fn=nil), то она спецом возвращает реальный адрес на константную пустую строку (на нулик, грубо говоря).
------------ Дoбавленo в 17.56:
Пока вы тут думаете, я немного соптимизировал код (см. аттач)
Абсолютно тот же функционал (просто "ногами" запихал multiCmp унутрь OutFiles)
Вопросы лишней верхней точки точки, doExt, опциональность регистровой независимости сравнений -- я не обсуждаю, как Вы заметили, наверное.
Несложные и непринципиальные вопросы.
nesco, решай сам про все эти "хотелки". В смысле: мне более, или менее -- все равно.