Russian Qt Forum

Qt => Общие вопросы => Тема начата: TheMixa от Сентябрь 05, 2010, 08:42



Название: QTemporaryFile и блокировки в Windows
Отправлено: TheMixa от Сентябрь 05, 2010, 08:42
Уважаемые форумчане, может кто сталкивался?
Создаю временный файл(QTemporaryFile), выгружаю туда из базы нужную информацию, закрываю его и далее открываю его QDesktopServices::openUrl(), например это был вордовский файл на что ворд сообщает что на файле стоит блокировка записи и предлагает выбрать как его открыть(только чтение, копия, подождать). В Linux такого нет.


Название: Re: QTemporaryFile и блокировки в Windows
Отправлено: merke от Сентябрь 05, 2010, 09:36
Попробуй QProcess

Если под виндой можешь попробовать WinApi

Код:
QByteArray ba = DIRECTORIYA;

char *c_str2 = ba.data();

ShellExecuteA(NULL,"open",c_str2, "",0,SW_NORMAL);


Название: Re: QTemporaryFile и блокировки в Windows
Отправлено: TheMixa от Сентябрь 05, 2010, 16:31
вопрос в том почему после file.close()  при попытке открыть этот файл во внешней программе винда репортует о блокировке на запись а linux нет? Обходится это копированием в новый файл и удалением старого. Это какаято особеность QTemporaryFile  в windows?


Название: Re: QTemporaryFile и блокировки в Windows
Отправлено: pastor от Сентябрь 05, 2010, 17:12
http://bugreports.qt.nokia.com/browse/QTBUG-13388
http://bugreports.qt.nokia.com/browse/QTBUG-10856