Этот тип EMCIDeviceError возникает, когда вы предоставляете полное имя файла свойству TMediaPlayer.FileName, которое превышает определенное количество символов. Это не имеет ничего общего с наличием пробелов в пути к файлу. Например, если вы воспроизводите звуки из каталога EXE и просто указываете относительное короткое имя, похоже, что никакой ошибки не происходит. Также с абсолютным именем файла из другого места, если оно короче определенного предела, ошибки нет. Я столкнулся с этим в XE5 и прибегнул к sndPlaySound ().