Conquest 1.4.19c1 released

  • Hi Conquest users,

    One week after releasing the new Conquest DICOM server version 1.4.19c, I provide an update 1.4.19c. Version 1.4.19c adds C-GET as DICOM service, a small built-in webserver, and provides several other fixes. Version 1.4.19c1 fixes small installer issues, adds a Weasis connector, and fixes a DICOM communication issue.

    The web based installer (and other ways of compiling) for Linux users has been much improved, please try it again!

    cd install

    chmod 777


    You can download the release here:…ver/

    Can you please try it? Reporting of issues will be greatly appreciated.

    As usual you can update by extracting dgate.exe or dgate64.exe and conquestdicomserver.exe, but also quite a few other files have changed - mainly in the web interface, lua code and installer.

    Part of the source code is included, the full source code of the next release (1.5.0) can now be browsed on:


    Marcel van Herk is developer of the Conquest DICOM server together with Lambert Zijp.

    Edited 5 times, last by marcelvanherk: 1.4.19c1 update released; Github link; full source code ().

  • Here bug reports for 1.4.19c will be collected.

    These are leftover bugs from earlier versions:

    1) add LittleEndianExplicit to GUI connecting to dgate. Futured

    2) Improve safety of sqlite by regular flushing. Futured, but users can change SqLite startup pragma for safer operation in 1.4.19c

    3) Check these changes: 20140608 mvh Added BYTE PCid to CStoreRSP::Write; This change is under review: pcid does not seem to get the right value

    4) brainix sample data fails to load from zip; maybe because of French folder names

    5) sql server and access database ODBC install only work for 32 bits of dgate (e.g. disable 64 bits or create ODBC entry by hand)

    6) install second server when service of first runs gives trouble - do an echo on the install button and fail if found - futured

    7 ) last line of dicom.ini does not read if no CR (IndexDBF = 50) - futured

    8 ) Publish about Docker release of Lance

    9) GUI fails to run as user after install as service on server2012; does run as admin - futured

    10) Implement web interface for batch anonymisation - futured

    11) overlapvirtualget=0 breaks the virtual server operation (hardw) - futured

    12) Thumbnail in MR confuses kpacs viewer (Dennis on mail) - futured. Not that KPACS viewer will be removed in gihub release.

    13) wish: OperatorConsole.printf ("*** multiplex: connection terminated [%s]\n", CallingApTitle); Futured

    14) color print server does not work. - futured, awaiting more information.

    15) Forward compressed as j2(?) does not set transfer syntax UID correctly in transmitted image. This is an issue on dcm4che but has not been seen in conquest to conquest transmission.

    16) browse tab does not work if user of server service and server gui are differerent.

    1.4.19b leftover bugs

    17) enpq reported random failure in 'process by after' mechanism (not confirmed)

    18 ) The latest postgres no longer allows unencrypted passwords. Double check install code.
    19) Make max PDU size configurable. Futured.

    20) Bomberbug posted jpeg compressed US image that decompresses to green hue. Unfortunately not yet fixed due to lack of time. Futured.

    21) request for time stamp in ms. Futured.

    22) add lua dicomget function. Added on github.

    23) validate that case insensitive query also matches lower case input. Futured

    24) the web installer will not start dgate (with dicom.ini) installed with maklinux due to use of relative paths in the config. Maybe add reconfig button. Futured.

    25) When opening a zip from web interface running on apache, the filename is not set correctly; it is when running from Ladle. Futured

    26) use BaseDir on dgate to find all folders (now many use current folder, complicating installer development). Futured.

    27) Create /usr/local/man.man1 folder to avoid error message in maklinux. Fixed on github

    28 ) The zerobrane studio integration installer currently does not work on Linux or Windows. Fixed in 1.4.19c1

    29) Add $SRC/luasocket/luasocket.a into line 47 in maklinux just as in line 39. Fixed in 1.4.19c1

    30) Issue communicating with carestream viewer (Ronald on gmail, seems to be related to IU UI change in dicom lib. Fixed in 1.4.19c1

    31) wadoviewers in cgi-bin/viewer folders are old versions. Fixed in 1.4.19c1

    32) updates in dicomlib are not in pdf documentation. Fixed in 1.4.19c1

    1.4.19c1 bugs:

    33) The installer dicom.ini in cgi-bin points to ../dgate.dic; should be ./dgate.dic. Does not seem to block operation though. Fixed on github

    34) Use sensible-browser instead of firefox in install scripts (needed to work for raspbian). Fixed on github

    35) read in web client directly from server side and start move there to avoid issues with file sharing in SeLinux. On Github

    36) Update new weasis viewer to use WebScriptAddress and compress, other viewers use all relative paths. Fixed on github

    37) default webcodebase from newweb is wrong =, also mode and patid2 are wrong, set to DefaultPage

    1.5.0-alpha bugs (

    38 ) Add Selinux control to linux install scripts. On Github

    39) Remove superfluous files from linux and src/doc folder

    40) Exclude src/doc from release zip file. On Github

    41) Provide TCP based waiting function to better control the move button and things like regen and such

    42) Document source of contributions, in particular the Papaya redistributable

    43) Finish and document dicomget dicomstore dicomprint, and [lua]printserver

    44) Use conquestdicomserver.lua from gui

    45) Update version numbers. On Github

    46) web installer does not copy cornerstone_starter, iframe_starter, dumpvars; Fixed in Github

    47) web installer should copy html folders as well

    48 ) web viewers are not properly started when there are spaces in the patient ID

    49) in the web installer a 'select *' is performed that crashes intel compiled exe because of unbound fields. Fixed on Github

    50) the intel compiled exe seems to suffer from unsufficient stack space in the server threads. Fixed on Github

    51) servercommand no longer returns NIL variable, returns incoming command instead. Fixed on Github

    52) Database test in installer crashes CGI client. Fixed on Github

    53) Openjpeg crashes intel compiled exe compressing JK. Fixed on Github

    54) dicomstore does not yet work. Fixed on Github

    55) GUI freezes when moving images in debug mode. Fixed on Github

    56) deletestudies: is broken. Fixed on Github

    57) delete unneeded registry entry of conquest. On Github

    58 ) cget fails to decompress and strip the header of the images. Fix in Github

    59) ZBS install fails to copy dgate.exe to interpreters folder. Fix on Github

    60) The increased PDU size broke compatibility with many clients. Made default 4096 and dynamic upon respons. On Github

    61) Multiple instance matching incomplete

    62) Add return flag for character encoding of (non worklist) queries

    63) See mail Goran on maxsublenght fix. Code seems to differ from mine. Solved - issue in his code

    64) Query caching filenames are not correct for linux.

    Marcel van Herk is developer of the Conquest DICOM server together with Lambert Zijp.

    Edited 39 times, last by marcelvanherk: Started list of 1.5.0 issues ().

  • This is a placeholder for feature requests.

    1) request for time stamp in ms.

    2) Lua dicomget client. Added on github

    3) pass e.g. &level=SERIES to web viewers to allow unifying image/series/study viewer. In 1.4.19c1

    4) allow optionally opening web viewer from GUI browser. Replaced kpacs in github version.

    5) optionally allow 2 viewers from web client, add selection in web installer. One selection in 1.4.19c1

    6) Use flag to avoid error messages from install controller (*** Not enough rights; ***Error loading)

    7) Unify weasis viewer in one lua file, for latest 3.0 version. In 1.4.19c1

    8 ) Fedora uses /var/www, and nohup has an issue. Therefore provide specific web install scripts for other linux flavours, e.g. Once started the same web installer should run. Fedura also requires "sudo setenforce Permissive" for the web server and install to work; also must be copied locally to the cgi-bin/newweb folder rather than pointing to the server folder.

    9) Provide systemctl and dgateserv service installers in web install;

    10) Step from web installer to conquestdicomserver.exe on windows. Fixed on github

    11) Use intel compiler for 64 bits version for better performance. On Github

  • on a fresh install of Centos 7, I am getting the following error trying to do an install for mysql.

    /tmp/ccEppYjQ.o: In function `do_lua(lua_State**, char*, scriptdata*)':

    total.cpp:(.text+0x7d2ad): undefined reference to `luaopen_socket_core'

    collect2: error: ld returned 1 exit status

    Please advise on resolution.

  • marcelvanherk

    Changed the title of the thread from “Conquest 1.4.19c released” to “Conquest 1.4.19c1 released”.
  • I have built and ran the 1.4.19c1 release with SQLite on:

    windows XP SP3

    windows 7

    windows 8.1

    Ubuntu 18

    Debian 9.5

    Fedora 29

    Raspberrian 2.5

    Some of the linux releases do require tweaking the install scripts as described above.

    Marcel van Herk is developer of the Conquest DICOM server together with Lambert Zijp.

  • Just as a quick note, I also just compiled on a fresh Centos 7.6 with the newest 1419c1 download and the $SRC/luasocket/luasocket.a is not in line 39 and so making with Mysql option doesn't work until it's added back into line 39. It is however in line 47.

    Mr. Johnathan Bravo

  • I've just testing 1419c1 version and first problem is that old Kpacs doesn't work with dicom transfer (querying works, retrieve not). Rolling back to 1419b and Kpacs gets back to normal behavior. Maybe the new c-get/c-move compatibility breaks old Kpacs settings?


  • Hi Bart,

    can you help me test another version with kpacs? Download here:…

    It also print the following on the command line if you run the server with from the command prompt with "dgate(64) -v"

    1. Monitoring for files in: e:\dicom1419b\data\incoming\
    2. DGATE (1.5.0-alpha-test1, build ?, bits 64) is running as threaded server
    3. Database type: built-in SQLite driver
    4. MaxSubLength=32768
    5. UPACS THREAD 1: STARTED AT: Tue Jan 08 19:01:02 2019

    This should read what kpacs can do and adjust to it. Previously it was hardcoded to 4096, in 1.4.19c1 it is hardcoded to 16384. The value is printed here:

    1. MaxSubLength=32768



    Marcel van Herk is developer of the Conquest DICOM server together with Lambert Zijp.

  • I would like to use conquest with weasis in the web browser.

    I can't see the config line under the web in my web page. I have only 3 line.

    In the config file (/usr/lib/cgi-bin/dicom.ini) I try to set weasis


    size = 560

    dsize = 0

    compress = un

    iconsize = 48

    graphic = gif

    #viewer = wadoseriesviewer

    viewer = weasis

    #studyviewer = studyweasis

    studyviewer = studyweasis

  • Hi,

    in version 1.4.19d1, weasis is started with weasis_starter:

    viewer = weasis_starter

    studyviewer = weasis_starter

    By the look of it, you have an older web installer.


    Marcel van Herk is developer of the Conquest DICOM server together with Lambert Zijp.

  • I installed 1.4.19.d (use debian)
    In the /usr/lib/cgi-bin/newweb/dicom.ini I changed viewer and studyviewer.

    After that I try this. But this use the conquest viewer.

    Where should I set the weasis viewer?

    #mvh 20151206 1.4.17d compatibility

    #mvh 20160314 for 1.4.19beta


    MicroPACS = sscscp

    ACRNemaMap =

    Dictionary = dgate.dic

    WebServerFor =

    TCPPort = 5678


    size = 560

    dsize = 0

    compress = j2

    iconsize = 84

    graphic = jpg

    #viewer = wadoseriesviewer

    #studyviewer = wadostudyviewer

    viewer = weasis_starter

    studyviewer = weasis_starter


    source = *.lua


    source = start.lua