1
0
Fork 0

PROJECT: updated todo list

GUI: fixed a bug with DOS filenames in the drag&drop function
This commit is contained in:
mr.exodia 2013-12-02 17:15:18 +01:00
parent 7145e14a1e
commit 86f05e2624
2 changed files with 8 additions and 11 deletions

View File

@ -71,4 +71,7 @@
- show export table - show export table
- find all intermodular calls - find all intermodular calls
- highlight register changes (only when CIP changed also) - highlight register changes (only when CIP changed also)
- PAGE UP + PAGE DOWN keys in disasm - PAGE UP + PAGE DOWN keys in disasm
- function lines (+database) for analysis
- 'dead' bytes custom analysis
- loops lines (+database) for analysis

View File

@ -180,15 +180,12 @@ void MainWindow::on_actionGoto_triggered()
void MainWindow::openFile() void MainWindow::openFile()
{ {
QString filename = QFileDialog::getOpenFileName(this, tr("Open file"), 0, tr("Executables (*.exe *.dll)")); QString filename = QFileDialog::getOpenFileName(this, tr("Open file"), 0, tr("Executables (*.exe *.dll);;All files (*.*)"));
if(!filename.length()) if(!filename.length())
return; return;
filename=QDir::toNativeSeparators(filename); //convert to native path format (with backlashes) filename=QDir::toNativeSeparators(filename); //convert to native path format (with backlashes)
if(DbgIsDebugging()) if(DbgIsDebugging())
{ DbgCmdExecDirect("stop");
Bridge::getBridge()->execCmd("stop"); //close current file (when present)
Sleep(400);
}
QString cmd; QString cmd;
Bridge::getBridge()->execCmd(cmd.sprintf("init \"%s\"", filename.toUtf8().constData()).toUtf8().constData()); Bridge::getBridge()->execCmd(cmd.sprintf("init \"%s\"", filename.toUtf8().constData()).toUtf8().constData());
} }
@ -229,14 +226,11 @@ void MainWindow::dropEvent(QDropEvent* pEvent)
{ {
if(pEvent->mimeData()->hasUrls()) if(pEvent->mimeData()->hasUrls())
{ {
QString filename = QString(pEvent->mimeData()->data("FileName")); QString filename = QDir::toNativeSeparators(pEvent->mimeData()->urls()[0].toLocalFile());
if(filename.contains(".exe", Qt::CaseInsensitive) || filename.contains(".dll", Qt::CaseInsensitive)) if(filename.contains(".exe", Qt::CaseInsensitive) || filename.contains(".dll", Qt::CaseInsensitive))
{ {
if(DbgIsDebugging()) if(DbgIsDebugging())
{ DbgCmdExecDirect("stop");
Bridge::getBridge()->execCmd("stop"); //close current file (when present)
Sleep(400);
}
QString cmd; QString cmd;
Bridge::getBridge()->execCmd(cmd.sprintf("init \"%s\"", filename.toUtf8().constData()).toUtf8().constData()); Bridge::getBridge()->execCmd(cmd.sprintf("init \"%s\"", filename.toUtf8().constData()).toUtf8().constData());
} }