Я пытаюсь разрешить перетаскивание файлов модульного теста .exe в QMainWindow
, мой dragEnterEvent
выглядит так:
void MainWindow::dragEnterEvent(QDragEnterEvent *e)
{
if (e->mimeData()->hasUrls())
{
QFileInfo info(e->mimeData()->urls().first().fileName()); // this works
if (info.isExecutable()) // false for .exe??
e->acceptProposedAction();
}
}
Тем не менее isExecutable()
функция возвращает false для файлов .exe.
У меня есть разрешения на файл, и я проверил, что путь к файлу от info
правильно указывает на исполняемый файл.
Ответ на этот вопрос кажется, что любой файл с расширением .exe должен возвращаться true
так почему же QFileInfo::isExecutable()
возвращение ложного?
Даже если QFileInfo info(e->mimeData()->urls().first().fileName()
появился, чтобы дать действительный QFileInfo
для исполняемого файла это не было на самом деле полностью работает.
С помощью toLocalFile()
вместо fileName()
решил проблему.
Других решений пока нет …