Russian Qt Forum
Ноябрь 25, 2024, 18:46 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 2 [3]   Вниз
  Печать  
Автор Тема: Извлечение ресурса из qrc в QTemporaryFile  (Прочитано 21635 раз)
Hellrider
Гость
« Ответ #30 : Декабрь 28, 2012, 11:14 »

Попробуй так.

Код
C++ (Qt)
const QString outputFile = QDir::tempPath() + "/ir_inter.wav";
QFile::copy ("://ir_inter.wav", outputFile);
QSound::play(outputFile);
QFile::remove(str);
 
Не удаляется. Все таки нужно снимать атрибут рид онли.
Записан
LisandreL
Птица говорун
*****
Offline Offline

Сообщений: 984


Надо улыбаться


Просмотр профиля
« Ответ #31 : Декабрь 28, 2012, 11:23 »

перед этим, на файл поставили атрибут рид онли?  Смеющийся
Разумеется. Без этого работает и без второй строки.
Записан
Hellrider
Гость
« Ответ #32 : Декабрь 28, 2012, 11:50 »

перед этим, на файл поставили атрибут рид онли?  Смеющийся
Разумеется. Без этого работает и без второй строки.
Хм.  Точно работает. Похоже я что то неправильно делал. Но почему в документации написано, что этот метод не работает с NTFS, или я не так понял смысл описания.
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #33 : Декабрь 28, 2012, 11:52 »

Винда - такая винда. Действительно, есть косяк. Кьют юзает функцию DeleteFile, в которой сказано
Цитировать
To delete a read-only file, first you must remove the read-only attribute.
В Линухе, как я и говорил, все пучком.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Hellrider
Гость
« Ответ #34 : Декабрь 28, 2012, 11:56 »

С каких это пор пермижены файла запрещают его удалять? Удаление файла - операция над каталогом, в котором файл этот находится, и тут важны пермижены каталога.

Какой метод отвечает за пермижены каталога? Я в доке не могу найти
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #35 : Декабрь 28, 2012, 12:28 »

С каких это пор пермижены файла запрещают его удалять? Удаление файла - операция над каталогом, в котором файл этот находится, и тут важны пермижены каталога.

Какой метод отвечает за пермижены каталога? Я в доке не могу найти
На сколько я помню, в Кьюте этого нет.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Bepec
Гость
« Ответ #36 : Декабрь 28, 2012, 12:32 »


Провел эксперимент.
При паузе в 2 мс после вызова QSound файл размером в 25 секунд прекрасно удаляется.

Если паузу не ставить, временный файл не удаляется.

Порывшись в исходниках становиться ясно, что sound вызывает апишную ф-цию, которая считывает файл в память, а потом ужо играет Улыбающийся

Если дать время функции считать файл (1 мс моей системе было достаточно), то всё происходит без сучка.

PS Пантер, удалять не позволяют (в Windows) именно разрешения файла. Для папки могут быть ограничены только права доступа, которые к теме отношения не имеют.
Записан
Hellrider
Гость
« Ответ #37 : Декабрь 28, 2012, 12:57 »


Провел эксперимент.
При паузе в 2 мс после вызова QSound файл размером в 25 секунд прекрасно удаляется.

Если паузу не ставить, временный файл не удаляется.

Порывшись в исходниках становиться ясно, что sound вызывает апишную ф-цию, которая считывает файл в память, а потом ужо играет Улыбающийся

Если дать время функции считать файл (1 мс моей системе было достаточно), то всё происходит без сучка.

PS Пантер, удалять не позволяют (в Windows) именно разрешения файла. Для папки могут быть ограничены только права доступа, которые к теме отношения не имеют.

Если не снять рид онли с файла, даже с паузой не удалиться. Вобщем проблема с удалением решена.
Хотелось бы для "справки" узнать, как именно можно копировать например данные из мп3 файла в пустой созданный файл?
Записан
kambala
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4747



Просмотр профиля WWW
« Ответ #38 : Декабрь 28, 2012, 13:20 »

QFile::read()/write() (для небольших файлов можно и readAll()) или QDataStream
Записан

Изучением C++ вымощена дорога в Qt.

UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
Страниц: 1 2 [3]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.08 секунд. Запросов: 23.