Цитата(Tereks @ 22.12.2009, 13:35)
Кто-нибудь сталкивался с проблемой копирования файла в буфер? Не могу добиться нормального копирования (ну как в TotalCommander к примеру)
пробовал через
QFile readFile( "C:\file.txt" );
if ( !readFile.open( QIODevice::ReadOnly ) )
return;
QMimeData * md = new QMimeData();
md->setData( "file", readFile.readAll() );
QApplication::clipboard()->setMimeData( md );
но как-то не очень вышло ) Поделитесь знанием..
постановка задачи не полностью ясна. Копирование файла в буфер для чего? Вставка в другое место с пом. средство оболочки?
начни искать тут:
http://www.rsdn.ru/article/winshell/shlext1.xml+ при копировании файла в буфер в винде там сидят вот такие миме типы:
Цитата
QClipboard formats: application/x-qt-windows-mime;value="Shell IDList Array" / text/uri-list / application/x-qt-windows-mime;value="Preferred DropEffect" / application/x-qt-windows-mime;value="Shell Object Offsets" / application/x-qt-windows-mime;value="FileName" / application/x-qt-windows-mime;value="FileNameW"
получено:
QClipboard* clipBrd = qApp->clipboard();
if (clipBrd){
const QMimeData* mime = clipBrd->mimeData();
if (mime){
toDebug =toDebug + QString("\n QClipboard formats: ") + mime->formats().join(" / ");
}
}
возможно эта инфа поможет.