Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. 3rd Party Software
  4. QT Error with Twain Data Source
Forum Updated to NodeBB v4.3 + New Features

QT Error with Twain Data Source

Scheduled Pinned Locked Moved Unsolved 3rd Party Software
37 Posts 2 Posters 14.0k Views 2 Watching
  • 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.
  • B bhim

    Thanks It much better now. Though i am still getting lot of errors but these are datatype error and seems like code specific.

    Thanks a lot for your help.

    Bhim

    mrjjM Offline
    mrjjM Offline
    mrjj
    Lifetime Qt Champion
    wrote on last edited by
    #17

    @bhim
    Np.
    I noticed there are some FreeImage lib files.
    Not sure it uses it but make sure they are compatible with vs 2008 if it does.

    Its pretty old project. there are no newer twain samples?

    1 Reply Last reply
    0
    • B Offline
      B Offline
      bhim
      wrote on last edited by bhim
      #18

      This is the latest sample they have. With this i m getting below error , would you be able to help with this one as well?

      I know how to take care of these in VS but not in QT.

      0_1513807832766_fe2a45f3-5e33-45ca-984a-82710a9c14af-image.png

      mrjjM 1 Reply Last reply
      0
      • B bhim

        This is the latest sample they have. With this i m getting below error , would you be able to help with this one as well?

        I know how to take care of these in VS but not in QT.

        0_1513807832766_fe2a45f3-5e33-45ca-984a-82710a9c14af-image.png

        mrjjM Offline
        mrjjM Offline
        mrjj
        Lifetime Qt Champion
        wrote on last edited by
        #19

        @bhim
        Well Qt is just a normal c++ LIB
        and those are normal windows API calls so fix them like you normal would.
        seems to be unicode related.
        Didnt it later become common to put _TCHAR or something in front ?
        or use wchar_t* and not char * ?
        maybe you can just use the A version of the API and not W version

        1 Reply Last reply
        0
        • mrjjM Offline
          mrjjM Offline
          mrjj
          Lifetime Qt Champion
          wrote on last edited by
          #20

          Hi
          I wondered if
          https://github.com/twain/twain-samples
          is something else than the twain you try ?

          1 Reply Last reply
          0
          • B Offline
            B Offline
            bhim
            wrote on last edited by
            #21

            I tried the exact same exact same Twain.

            mrjjM 1 Reply Last reply
            0
            • B bhim

              I tried the exact same exact same Twain.

              mrjjM Offline
              mrjjM Offline
              mrjj
              Lifetime Qt Champion
              wrote on last edited by
              #22

              @bhim
              Ok but it didnt work or was not what you wanted?

              1 Reply Last reply
              0
              • B Offline
                B Offline
                bhim
                wrote on last edited by
                #23

                It did not work. However i am able to resolve most of the error for data type conversion. I am now stuck at below, i am not able to go to definition\declaration of this method to make any change. I know how to do it in Visual Studio but not in QT. Can you please help

                0_1513870545958_2d8762fa-efe9-42b6-9bcb-a13c435fa223-image.png

                1 Reply Last reply
                0
                • B Offline
                  B Offline
                  bhim
                  wrote on last edited by bhim
                  #24

                  Hi,

                  I have resolved all string related error. Now my project is showing this :-1: error: LNK1104: cannot open file 'freeimage.lib' . If i could find the Visual Studio equivalent or Project property in QT, that would be very helpful to very file the linker paths.

                  mrjjM 1 Reply Last reply
                  0
                  • B bhim

                    Hi,

                    I have resolved all string related error. Now my project is showing this :-1: error: LNK1104: cannot open file 'freeimage.lib' . If i could find the Visual Studio equivalent or Project property in QT, that would be very helpful to very file the linker paths.

                    mrjjM Offline
                    mrjjM Offline
                    mrjj
                    Lifetime Qt Champion
                    wrote on last edited by
                    #25

                    @bhim
                    you mean to link the LIB file to the project ?
                    http://doc.qt.io/qt-5/third-party-libraries.html
                    http://doc.qt.io/qtcreator/creator-project-qmake-libraries.html

                    Basically you need a
                    LIBS += -L"3rdparty/CatWhisperer/lib" -lCatWhisperer
                    (with correct names of course)

                    1 Reply Last reply
                    1
                    • B Offline
                      B Offline
                      bhim
                      wrote on last edited by
                      #26

                      Thanks , this resolve the lib issue. Now below 2 error

                      14:31:45: Running steps for project src...
                      14:31:45: Configuration unchanged, skipping qmake step.
                      14:31:45: Starting: "C:\Qt\qtcreator-4.5.0\bin\jom.exe"
                      c:\Qt\4.8.7\bin\qmake.exe -spec c:\Qt\4.8.7\mkspecs\win32-msvc2008 CONFIG+=release -o Makefile ..\src\src.pro
                      C:\Qt\qtcreator-4.5.0\bin\jom.exe -f Makefile.Debug
                      link /LIBPATH:"c:\Qt\4.8.7\lib" /NOLOGO /DYNAMICBASE /NXCOMPAT /DEBUG /DLL /MANIFEST /MANIFESTFILE:"debug\TWAINDS_FreeImage.intermediate.manifest" /OUT:debug\TWAINDS_FreeImage.dll @C:\Users\rathorb\AppData\Local\Temp\TWAINDS_FreeImage.dll.13524.62.jom
                      TWAIN_UI.obj : error LNK2019: unresolved external symbol __imp__SHGetSpecialFolderPathA@16 referenced in function "public: __thiscall CTWAIN_UI::CTWAIN_UI(class CTWAINDS_FreeImage *)" (??0CTWAIN_UI@@QAE@PAVCTWAINDS_FreeImage@@@Z)
                      debug\TWAINDS_FreeImage.dll : fatal error LNK1120: 1 unresolved externals
                      jom: C:\ODIImages\Source\Twain\twain-samples-master\twain-samples-master\TWAIN-Samples\Twain_DS_sample01\build-src-Unnamed-Release\Makefile.Debug [debug\TWAINDS_FreeImage.dll] Error 1120
                      jom: C:\ODIImages\Source\Twain\twain-samples-master\twain-samples-master\TWAIN-Samples\Twain_DS_sample01\build-src-Unnamed-Release\Makefile [debug] Error 2
                      14:31:51: The process "C:\Qt\qtcreator-4.5.0\bin\jom.exe" exited with code 2.
                      Error while building/deploying project src (kit: Unnamed)
                      The kit Unnamed has configuration issues which might be the root cause for this problem.
                      When executing step "Make"
                      14:31:51: Elapsed time: 00:06.

                      debug\TWAINDS_FreeImage.dll:-1: error: LNK1120: 1 unresolved externals

                      1 Reply Last reply
                      0
                      • mrjjM Offline
                        mrjjM Offline
                        mrjj
                        Lifetime Qt Champion
                        wrote on last edited by
                        #27

                        Hi
                        seems you need to link to
                        Shell32.lib also
                        https://msdn.microsoft.com/en-us/library/windows/desktop/bb762204(v=vs.85).aspx

                        1 Reply Last reply
                        1
                        • B Offline
                          B Offline
                          bhim
                          wrote on last edited by
                          #28

                          Thanks. I m able to build and run it now. But not able to find the output file, a .ds file anywhere? Can you please help me find where project is generating this file.

                          Below is pro file code

                          unix {
                          TEMPLATE = lib
                          VERSION = 1.0
                          DEFINES += UNIX
                          }
                          PROJECT_FILE_NAME = TWAINDS_FreeImage
                          TARGET = $$PROJECT_FILE_NAME
                          LIBS += -lfreeimage

                          TWAIN datasources end with a .ds instead of .so

                          QMAKE_POST_LINK = cp
                          $(TARGET)
                          $${PROJECT_FILE_NAME}.ds
                          ds.path = /usr/local/lib/twain/FreeImage
                          ds.files = $${PROJECT_FILE_NAME}.ds
                          TWAIN_logo.png
                          INSTALLS += ds
                          QMAKE_CLEAN = $${PROJECT_FILE_NAME}.ds
                          INCLUDEPATH = /usr/local/include
                          ../../pub/external/include
                          ../../pub/include
                          ../../visual_studio/Debug32
                          ../../common
                          LIBS += -L"../../pub/external/lib" -lFreeImage
                          SOURCES += ../../common/CTiffWriter.cpp
                          ../../common/CommonTWAIN.cpp
                          CommonDS.cpp
                          CScanner_FreeImage.cpp
                          CTWAINDS_Base.cpp
                          CTWAINDS_FreeImage.cpp
                          DSMInterface.cpp
                          TWAINContainer.cpp
                          TWAINContainerFix32.cpp
                          TWAINContainerFrame.cpp
                          TWAINContainerInt.cpp
                          CTWAINDS_Sample1.cpp
                          TWAIN_UI.cpp
                          TWAINContainerString.cpp
                          TWAINContainerFix32Range.cpp
                          TWAINContainerBool.cpp
                          QT_UI.cpp
                          Qt_MainForm.cpp
                          Qt_About.cpp
                          Qt_ProfileName.cpp
                          HEADERS += ../../common/Common.h
                          ../../common/CommonTWAIN.h
                          ../../common/CTiffWriter.h
                          CScanner_FreeImage.h
                          CTWAINDS_Base.h
                          CTWAINDS_FreeImage.h
                          CommonDS.h
                          DSMInterface.h
                          TWAINContainerFix32.h
                          TWAINContainerFrame.h
                          TWAINContainer.h
                          TWAINContainerInt.h
                          CTWAINDS_Sample1.h
                          TWAIN_UI.h
                          TWAINContainerString.h
                          TWAINContainerFix32Range.h
                          TWAINContainerBool.h
                          QT_UI.h
                          Qt_MainForm.h
                          Qt_About.h
                          Qt_ProfileName.h
                          ui_About.h
                          ui_MainForm.h
                          ui_About.h
                          TEMPLATE = lib
                          CONFIG += warn_on
                          debug
                          x86 ppc

                          QMAKE_BUNDLE_EXTENSION = ds

                          this project doesn't need any QT libs.

                          QMAKE_LIBS_QT =
                          QMAKE_LIBS_QT_THREAD =
                          FORMS += MainForm.ui
                          About.ui
                          ProfileName.ui
                          RESOURCES += qtresources.qrc

                          unix|win32: LIBS += -lshell32

                          mrjjM 1 Reply Last reply
                          0
                          • B bhim

                            Thanks. I m able to build and run it now. But not able to find the output file, a .ds file anywhere? Can you please help me find where project is generating this file.

                            Below is pro file code

                            unix {
                            TEMPLATE = lib
                            VERSION = 1.0
                            DEFINES += UNIX
                            }
                            PROJECT_FILE_NAME = TWAINDS_FreeImage
                            TARGET = $$PROJECT_FILE_NAME
                            LIBS += -lfreeimage

                            TWAIN datasources end with a .ds instead of .so

                            QMAKE_POST_LINK = cp
                            $(TARGET)
                            $${PROJECT_FILE_NAME}.ds
                            ds.path = /usr/local/lib/twain/FreeImage
                            ds.files = $${PROJECT_FILE_NAME}.ds
                            TWAIN_logo.png
                            INSTALLS += ds
                            QMAKE_CLEAN = $${PROJECT_FILE_NAME}.ds
                            INCLUDEPATH = /usr/local/include
                            ../../pub/external/include
                            ../../pub/include
                            ../../visual_studio/Debug32
                            ../../common
                            LIBS += -L"../../pub/external/lib" -lFreeImage
                            SOURCES += ../../common/CTiffWriter.cpp
                            ../../common/CommonTWAIN.cpp
                            CommonDS.cpp
                            CScanner_FreeImage.cpp
                            CTWAINDS_Base.cpp
                            CTWAINDS_FreeImage.cpp
                            DSMInterface.cpp
                            TWAINContainer.cpp
                            TWAINContainerFix32.cpp
                            TWAINContainerFrame.cpp
                            TWAINContainerInt.cpp
                            CTWAINDS_Sample1.cpp
                            TWAIN_UI.cpp
                            TWAINContainerString.cpp
                            TWAINContainerFix32Range.cpp
                            TWAINContainerBool.cpp
                            QT_UI.cpp
                            Qt_MainForm.cpp
                            Qt_About.cpp
                            Qt_ProfileName.cpp
                            HEADERS += ../../common/Common.h
                            ../../common/CommonTWAIN.h
                            ../../common/CTiffWriter.h
                            CScanner_FreeImage.h
                            CTWAINDS_Base.h
                            CTWAINDS_FreeImage.h
                            CommonDS.h
                            DSMInterface.h
                            TWAINContainerFix32.h
                            TWAINContainerFrame.h
                            TWAINContainer.h
                            TWAINContainerInt.h
                            CTWAINDS_Sample1.h
                            TWAIN_UI.h
                            TWAINContainerString.h
                            TWAINContainerFix32Range.h
                            TWAINContainerBool.h
                            QT_UI.h
                            Qt_MainForm.h
                            Qt_About.h
                            Qt_ProfileName.h
                            ui_About.h
                            ui_MainForm.h
                            ui_About.h
                            TEMPLATE = lib
                            CONFIG += warn_on
                            debug
                            x86 ppc

                            QMAKE_BUNDLE_EXTENSION = ds

                            this project doesn't need any QT libs.

                            QMAKE_LIBS_QT =
                            QMAKE_LIBS_QT_THREAD =
                            FORMS += MainForm.ui
                            About.ui
                            ProfileName.ui
                            RESOURCES += qtresources.qrc

                            unix|win32: LIBS += -lshell32

                            mrjjM Offline
                            mrjjM Offline
                            mrjj
                            Lifetime Qt Champion
                            wrote on last edited by
                            #29

                            @bhim
                            Its not in build folder?

                            1 Reply Last reply
                            0
                            • B Offline
                              B Offline
                              bhim
                              wrote on last edited by
                              #30

                              Its there, but its in dll extension, its supposed to be .ds extension.

                              mrjjM 1 Reply Last reply
                              0
                              • B bhim

                                Its there, but its in dll extension, its supposed to be .ds extension.

                                mrjjM Offline
                                mrjjM Offline
                                mrjj
                                Lifetime Qt Champion
                                wrote on last edited by
                                #31

                                @bhim
                                What is a .ds file ?

                                1 Reply Last reply
                                0
                                • B Offline
                                  B Offline
                                  bhim
                                  wrote on last edited by
                                  #32

                                  ds is Twain data source, OR Twain Driver. See below from my pro file, based on this it should have generated

                                  TWAIN datasources end with a .ds instead of .so

                                  QMAKE_POST_LINK = cp
                                  $(TARGET)
                                  $${PROJECT_FILE_NAME}.ds
                                  ds.path = /usr/local/lib/twain/FreeImage
                                  ds.files = $${PROJECT_FILE_NAME}.ds
                                  TWAIN_logo.png
                                  INSTALLS += ds
                                  QMAKE_CLEAN = $${PROJECT_FILE_NAME}.ds

                                  mrjjM 1 Reply Last reply
                                  0
                                  • B bhim

                                    ds is Twain data source, OR Twain Driver. See below from my pro file, based on this it should have generated

                                    TWAIN datasources end with a .ds instead of .so

                                    QMAKE_POST_LINK = cp
                                    $(TARGET)
                                    $${PROJECT_FILE_NAME}.ds
                                    ds.path = /usr/local/lib/twain/FreeImage
                                    ds.files = $${PROJECT_FILE_NAME}.ds
                                    TWAIN_logo.png
                                    INSTALLS += ds
                                    QMAKE_CLEAN = $${PROJECT_FILE_NAME}.ds

                                    mrjjM Offline
                                    mrjjM Offline
                                    mrjj
                                    Lifetime Qt Champion
                                    wrote on last edited by
                                    #33

                                    @bhim
                                    Ok but a SO file is a DLL.
                                    so being on windows, i wonder if the DS is just a DLL.

                                    Is that to load into the sample project ?

                                    1 Reply Last reply
                                    0
                                    • B Offline
                                      B Offline
                                      bhim
                                      wrote on last edited by
                                      #34

                                      I change the DLL extension to ds and replaced with original DS file. It dd not work, it was not even detected. I think if somehow i could emit a .ds file , it will work. Below is the project property of visual studio project which generated original ds file

                                      0_1513895238850_1e6725b3-35b3-43c1-8cc2-32666e9a61cf-image.png

                                      1 Reply Last reply
                                      0
                                      • mrjjM Offline
                                        mrjjM Offline
                                        mrjj
                                        Lifetime Qt Champion
                                        wrote on last edited by
                                        #35

                                        Sorry i have no idea what / how a ds file should be produced.
                                        Site says
                                        copy TWAINDS_Sample[32|64].ds to /Windows/twain_[32|64]/sample2
                                        so it looks like a DLL. but sadly i cant find out more.

                                        1 Reply Last reply
                                        0
                                        • B Offline
                                          B Offline
                                          bhim
                                          wrote on last edited by
                                          #36

                                          Coding wise everything looks fine, I am trying to debug ds file using a sample connection application. But connection application itself is giving below error. Can you please help.

                                          0_1513898201339_529f0520-4c9a-47d1-9056-e064c3587660-image.png

                                          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