mciSendString: файл, содержащий пробелы

Если я использую mciSendString (winmm.dll) и пытаюсь прочитать файл, содержащий пробелы (например, F:\MUSIC\(01) [VA]01.StimAxel - Restart(DJ X-VenomRemix).mp3), я получаю сообщение об ошибке с код 263.
mciSendString не может работать с файлами, содержащими пробелы. Как избежать этой проблемы?
Pcommand = "status \"" + path + "\" length";
int ret = (int)mciSendString(Pcommand, sBuffer, sBuffer.Capacity, 0);


person Sergey    schedule 13.11.2010    source источник
comment
Строка, которую вы отправляете, просто ерунда, статус предназначен для устройства, а не для медиафайла. Это не станет лучше, пока вы не объясните, что вы на самом деле пытаетесь сделать.   -  person Hans Passant    schedule 14.11.2010


Ответы (1)


Попробуйте заключить имя файла в двойные кавычки.

Обновление: согласно документам, status принимает имя устройства, а не имя файла. Вам нужно использовать open, чтобы открыть файл на определенном устройстве, затем передайте это имя устройства status.

person casablanca    schedule 13.11.2010
comment
Я открываю его перед использованием статуса. Это не помогает. Это потому, что в имени файла есть пробелы. - person Sergey; 14.11.2010