Эта проблема, которую я имею, очень легко воспроизвести. Создайте базовое приложение MFC MDI с расширением файла как .xyz, используя Visual Studio 2010. Код приложения по умолчанию легко регистрирует ассоциации файлов посредством вызовов:
// Enable DDE Execute open
EnableShellOpen();
RegisterShellFileTypes(TRUE);
Проблема заключается в том, что внутри RegisterShellFileTypes (TRUE) сбой вызова ниже:
if (!_AfxSetRegKey(strFileTypeId, strFileTypeName))
continue; // just skip it
Файл, очевидно, не регистрируется и не принимает назначенный приложению значок файла. Все, что я хочу, это когда я дважды щелкаю по зарегистрированному типу файла (в данном случае .xyz), он должен открываться в приложении, но не открывается. Чего не хватает .. как заставить это работать?