Отображаемые в память файлы - одна из моих любимых функций. Это абсолютно не опасно .Это одна из базовых чрезвычайно оптимизированных функций ввода / вывода Windows.Если запустить EXE или косвенно загрузить DLL, это будет реализовано внутри как отображение файлов с отображением в памяти.
Поддерживается на всех типах файловых систем , включая FAT.
Кстати, atzz говорят, что сопоставленные с памятью файлы разрешены на сетевых дисках.Я могу добавить, что это не только разрешено, но настоятельно рекомендуется использовать отображенный в памяти файл также с файлами из сети.В этом случае операция ввода-вывода будет кэшироваться очень хорошо, что не выполняется с другими (C / C ++) ввода-вывода.
Если вы хотите, чтобы EXE-файл не падал при его открытиис компакт-диска или по сети можно пометить исполняемый файл программы с одним битом в заголовке (переключатель компоновщика / SWAPRUN см. http://msdn.microsoft.com/en-us/library/chzz5ts6.aspx). Нет опции для документов, открытых с USB-накопителя.
Но какую именно проблему решаюту пользователей? Не используют ли они значок «Безопасное извлечение устройства»? Затем им нужно научиться делать это точно так же, как они учатся не переключать питание компьютера, а правильно его выключать.
МожетВы объясняете, почему вы находите опасности в использовании файлов, отображаемых в память, и в каких ситуациях у вас возникают проблемы, и нет ли проблем с использованием других операций ввода-вывода?