Я пишу клиент-серверное приложение laucher.
Администратор со стороны сервера выбирает исполняемые файлы («.exes») из списка и добавляет их в короткий список приложений, которые обычные пользователи могут запускать на клиенте.
Чтобы скомпилировать этот список, мое клиентское приложение будет выполнять рекурсивный поиск во всех папках системы на наличие файлов exe и отправлять этот список на сервер через wcf.
Чтобы сэкономить время поиска и сохранить список коротким, я бы хотел избежать поиска в папках, которые не ВЕРОЯТНО содержат «.exes», которые пользователи-пользователи должны запускать напрямую.
Примеры (я думаю):
% windir% \ WinSxS - Windows Side-by-Side - используется для хранения версий компонентов Windows, созданных для уменьшения проблем конфигурации с библиотеками Dynamic Link.
% windir% \ installer - используется для хранения информации об установке для установленных программ
C: \ MSOCache - локальный источник установки MS Office
Большинство скрытых папок
Какие еще папки следует избегать при поиске и что они могут содержать?
Меня интересует WinXP / WinVista / Win7.
EDIT:
Время поиска - не самый важный фактор.
Очень важно не исключать exe-файлы, которые могут понадобиться пользователю для запуска И, чтобы исключить exe-файлы, такие как:
C: \ Windows \ WinSxS \ x86_Microsoft-окна-x..rtificateenrollment_31bf3856ad364e35_6.1.7600.20520_none_f43289dd08ebec20 \ CertEnrollCtrl.exe
, которые никогда не предназначались для непосредственного запуска пользователем.