Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. International
  3. Spanish
  4. Parámetros diferentes para linux y windows.

Parámetros diferentes para linux y windows.

Scheduled Pinned Locked Moved Unsolved Spanish
3 Posts 2 Posters 607 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • L Offline
    L Offline
    Ladis
    wrote on last edited by
    #1

    Buenas tarde.
    No se si el título es muy descriptivo pero no se me ocurre otro. El caso es que tengo una funcion que llama a VLC y le paso el parámetro de la direccion del video que quiero reproducir. En linux no tengo ningun problema pero en windows antepone la ruta del ejecutable Qt a la del archivo. Es la primera vez que trabajo en windows y no logro que funcione.

    void Consulta::on_lvIris_itemDoubleClicked(QListWidgetItem *item)
    {
        QString ojo = directorioTrabajo+"/"+paciente+"/"+"Iris/"+item->text();
        QFileInfo info(ojo);
        if(info.completeSuffix() == "jpg" or info.completeSuffix() == "png"){
        QString programa = appImagen;
        QStringList arg;
        arg << ojo.toLocal8Bit().constData();
        QProcess *proc = new QProcess(this);
        proc->start(programa,arg);
        }
        if(info.completeSuffix() == "avi"){
            QString programa = appVideo;
            QStringList arg;
            arg << ojo.toLocal8Bit().constData();
            qDebug() << programa;
            qDebug() << arg;
    
            QProcess *proc = new QProcess(this);
            proc->start(programa,arg);
        }
    }
    
    

    qDebug() me devuelve lo mismo en ambos casos como es lógico.
    Ambos abren VLC (appVideo) pero en windows VLC intenta abrir un archivo en la ruta_compilacion+ruta_del_video.
    Screenshot_20211017_125348.png
    en Linux
    Captura.PNG
    En windows.

    Alguien sabe por que?.

    Gracias

    1 Reply Last reply
    0
    • juankiJ Offline
      juankiJ Offline
      juanki
      Moderators
      wrote on last edited by
      #2

      Hola

      No sé por que ocurrirá, puedes usar QDir que tiene métodos para obtener diferentes rutas del sistema y relativas a tu ejecutable.

      Si la ruta que obtienes es diferente de linux a windows también puedes combinar con el uso del preprocesador y obtener la ruta adecuada en ambos sistemas:

      #ifdef Q_OS_WIN
          ...
      #else
          ...
      #endif
      

      En https://doc.qt.io/qt-6/qtglobal.html puedes ver las opciones que puedes usar.

      Un saludo

      Intenta explicar el problema lo más claro y detallado posible. Adjunta los errores y el código que creas da el error.
      Procura escribir correctamente y sin faltas de ortografía.

      Si la duda se solucionó, por favor, marca el tema como 'solucionado'.

      L 1 Reply Last reply
      0
      • juankiJ juanki

        Hola

        No sé por que ocurrirá, puedes usar QDir que tiene métodos para obtener diferentes rutas del sistema y relativas a tu ejecutable.

        Si la ruta que obtienes es diferente de linux a windows también puedes combinar con el uso del preprocesador y obtener la ruta adecuada en ambos sistemas:

        #ifdef Q_OS_WIN
            ...
        #else
            ...
        #endif
        

        En https://doc.qt.io/qt-6/qtglobal.html puedes ver las opciones que puedes usar.

        Un saludo

        L Offline
        L Offline
        Ladis
        wrote on last edited by
        #3

        @juanki
        Gracias por responder.
        Ahora mismo no tengo tiempo para investigar como arreglarlo, tengo que seguir avanzando, y de momento lo he solucionado dejando que cada tipo de archivo sea abier por la aplicación predeterminada del sistema mediante:

                QDesktopServices::openUrl(QUrl::fromLocalFile(archivo));
        
        

        y así me abre cualquier tipo de fichero que esté registrado en el sistema con la aplicacion por defecto.
        En un futuro me gustaría cambiarlo y si doy con la solución lo comentaré.

        Gracias otra vez.

        1 Reply Last reply
        0

        • Login

        • Login or register to search.
        • First post
          Last post
        0
        • Categories
        • Recent
        • Tags
        • Popular
        • Users
        • Groups
        • Search
        • Get Qt Extensions
        • Unsolved