Windows CE 6.0 and SerialPort



  • Hi,

    I need to read and write data to a serial port on an embedded device, that runs Windows CE 6.0. On the CD was the SDK that uses MSVC2005 (it's called NewBest6410).
    Sadly, the program doesnt start and open a window!
    I was able to compile qt-everywhere-opensource-src-4.8.7 and a sample application. A sample application without any dependencies but qt runs successfully on that device!!
    I compiled successfully the Qt-Addon QtSerialPort.
    When I add the include path and lib to my application pro file, the application still opens successfully.
    But when I call any method of that addon, the program does not start anymore.

    Is there some way to debug this? I dont have a windows ce debugger or something like that. I put the .exe file on a usb stick to start it on the device.

    Thanks for any ideas!



  • Hi 0xFEEDC0DE64,

    Attach code how you include lib and call method.

    When i put my .exe in the CE device i put next lib in the same directory. That is:
    QtCore4.dll, QtDeclarative4.dll, QtGui4.dll, QtNetwork4.dll, QtScript4.dll, QtSql4.dll

    If you press F3 in the Total Commander at the .exe you will see all needed .dll to your program



  • Hi, thanks for your help!

    I used dependancy walker and it looks ok.
    The dll for serial port was also on that usb stick in the same directory.
    The application runs on my development computer (compiled with the right compiler) successfully. So the calls to the lib should be correct.

    This is the signal that gets triggerd after pressing a button (so it doesnt open the port on program launch):

    m_port = new SerialPort(m_infos.at(0), this);
    m_port->setRate(SerialPort::Rate9600);
    if(!m_port->open(SerialPort::ReadWrite))
    {
    debug_text(QString("Open failed! %0 %1").arg(m_port->error()).arg(m_port->errorString()));
    return;
    }

    m_infos contains the only port (on windows ce and the dev computer).


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.