Results 1 to 12 of 12

Thread: Cannot get stdout from QProcess

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Join Date
    Feb 2006
    Location
    Oslo, Norway
    Posts
    6,264
    Qt products
    Qt4
    Platforms
    MacOS X Unix/X11 Windows Symbian S60 Maemo/MeeGo
    Thanks
    36
    Thanked 1,519 Times in 1,389 Posts

    Default Re: Cannot get stdout from QProcess

    Quote Originally Posted by seneca
    Is the Qt application built as console, or are you checking the dDebug output with the debugger? Otherwise you wont see any qDebug output on windows.
    With a debugger... I can see qDebug() outputs fine, that is not the problem.

  2. #2
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,376
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Thanks
    4
    Thanked 5,019 Times in 4,795 Posts
    Wiki edits
    10

    Default Re: Cannot get stdout from QProcess

    Reading all output at once, even after the application is finished is not a very good idea. For short outputs it is fine, but if you expect a large amount of data to come through that pipe, you should use a signal/slot mechanism to read the data as it comes in. Why? Because it may happen that you fill the pipe buffer between those two processes and the child process will never finish, because it'll be waiting until some of the buffer is read so that it can write all the remaining data. So you should use readyReadStdout() and family.

  3. #3
    Join Date
    Feb 2006
    Location
    Oslo, Norway
    Posts
    6,264
    Qt products
    Qt4
    Platforms
    MacOS X Unix/X11 Windows Symbian S60 Maemo/MeeGo
    Thanks
    36
    Thanked 1,519 Times in 1,389 Posts

    Default Re: Cannot get stdout from QProcess

    My point is, that I never get any output on windows with the above code.
    Even when I set the working dir so that the output is expected to be extremely short.

  4. #4
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,376
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Thanks
    4
    Thanked 5,019 Times in 4,795 Posts
    Wiki edits
    10

    Default Re: Cannot get stdout from QProcess

    Quote Originally Posted by jpn
    My point is, that I never get any output on windows with the above code.
    Even when I set the working dir so that the output is expected to be extremely short.
    Because there is no "dir" executable on Windows. "dir" is a command.com (or cmd.exe) command, so you have to run it from the shell. There are threads on this forum that cover the topic, maybe you should take a look at them.

  5. The following user says thank you to wysota for this useful post:

    jpn (3rd March 2006)

  6. #5
    Join Date
    Feb 2006
    Location
    Oslo, Norway
    Posts
    6,264
    Qt products
    Qt4
    Platforms
    MacOS X Unix/X11 Windows Symbian S60 Maemo/MeeGo
    Thanks
    36
    Thanked 1,519 Times in 1,389 Posts

    Default Re: Cannot get stdout from QProcess

    Quote Originally Posted by wysota
    Because there is no "dir" executable on Windows. "dir" is a command.com (or cmd.exe) command, so you have to run it from the shell. There are threads on this forum that cover the topic, maybe you should take a look at them.
    Ahh, now I get the point..

Similar Threads

  1. Detect First QProcess finished in a group and kill other
    By Davidaino in forum Qt Programming
    Replies: 3
    Last Post: 11th July 2008, 12:53
  2. QProcess exitStatus()
    By user_mail07 in forum Qt Programming
    Replies: 2
    Last Post: 12th June 2008, 20:51
  3. Problem with qprocess
    By resal in forum Qt Programming
    Replies: 8
    Last Post: 29th August 2007, 22:13
  4. QProcess and Pipes
    By KaptainKarl in forum Qt Programming
    Replies: 1
    Last Post: 9th April 2007, 23:11
  5. QProcess problem in accessing stdout
    By aruna in forum Qt Programming
    Replies: 1
    Last Post: 19th April 2006, 17:56

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Qt is a trademark of The Qt Company.