Мои midl*
файлы в какой-то момент «повредились», либо после установки Windows 8.1 SDK
со всеми подкомпонентами, либо при обновлении Visual Studio 2015 - наверное, у меня нет точного отслеживания когда они могли быть перезаписаны.
С тех пор я продолжал получать MIDL9008
при компиляции проекта, который был хорош до этого. Midlc.exe
даже сбой при попытке построить определенный проект.
Решением было заменить midl*
файлы с
C:\Program Files (x86)\Windows Kits\8.1\bin\x86
(because that's where midlc.exe and midl.exe were starting from, verified by using procmon)
с теми же файлами с другой машины, на которой проблема не существовала.
Удивительно, но размеры файлов midl*
из одних и тех же папок были разными, хотя сообщенные номера версий были одинаковыми! Это был четкий показатель того, что замена их может что-то исправить.
Копирование файлов (midl.exe, midlc.exe, midlrt.exe, midlrtmd.dll)
решило проблему. Очень рад, что мне не пришлось переустанавливать Windows только для того, чтобы исправить эту досадную и неприятную проблему!