Прогресс, однако! Советую в Known*Checker отказаться от if в сторону switch/case, получится вот так:
switch (s) {
case "Super_Dgun.cs":
return s + " - дган"
case "QuantumCrasher.sf":
return s + " - крашер"
default:
return s + "- неизв. сф"
}
Подробнее можно на
msdn почитать
А вообще поиск файлов должен выглядеть примерно
так. Намного легче добавлять известные скрипты, для добавления новых расширений никакие переменные не нужны. Масштабируемость, хуле. Осталось на C# перевести.
Кстати, я вот заметил, что у тебя файлы просто из папок берутся, а ASI вообще не детектится. По расширениям бы их сортировать, как в примере выше.