Я полагаю, что ответ Сторменет не является технически программным , поэтому я отделю свой ответ в ответ.
Для лучшей производительности ничто не сравнится с открытием файла (ов) с StreamReader
, чтением первых (n) байтов и проверкой структур данных сигнатуры файла .NET в потоке байтов.
Примерно так же, как если бы вы проверяли, что это исполняемый файл DOS:
http://en.wikipedia.org/wiki/DOS_executable
Найдите байты заголовка "MZ", которые также являются инициалами Марка Збиковского, одного из разработчиков MS-DOS.