diff --git a/Code/Wrappers/QtWidget/otbWrapperQtWidgetInputImageParameter.cxx b/Code/Wrappers/QtWidget/otbWrapperQtWidgetInputImageParameter.cxx
index d90161dba0d76151ab25c06663d16aa0e72a8ebf..54994ae9c2e8819a0e635f8d42c75373557b62c1 100644
--- a/Code/Wrappers/QtWidget/otbWrapperQtWidgetInputImageParameter.cxx
+++ b/Code/Wrappers/QtWidget/otbWrapperQtWidgetInputImageParameter.cxx
@@ -16,6 +16,7 @@
 
 =========================================================================*/
 #include "otbWrapperQtWidgetInputImageParameter.h"
+#include <stdexcept>
 
 namespace otb
 {
@@ -65,6 +66,7 @@ void QtWidgetInputImageParameter::SelectFile()
 {
   QFileDialog fileDialog;
   fileDialog.setConfirmOverwrite(true);
+  fileDialog.setFileMode(QFileDialog::ExistingFile);
   fileDialog.setNameFilter("Raster files (*)");
 
   if (fileDialog.exec())
@@ -86,10 +88,11 @@ bool QtWidgetInputImageParameter::SetFileName(const QString& value)
 {
   bool res = true;
   // save value
-  if(m_InputImageParam->SetFromFileName(static_cast<const char*>(value.toAscii())) == true )
+  if(m_InputImageParam->SetFromFileName(value.toAscii().constData()) == true)
     {
     // notify of value change
     QString key( m_InputImageParam->GetKey() );
+
     emit ParameterChanged(key);
     }
   else