当前位置:   article > 正文

使用dcmtk进行worklist服务的测试方法_dcmtk 服务器

dcmtk 服务器

服务器端,把dcmtk-3.5.4/dcmwlm/wlistdb/OFFIS目录下的文件通过dump2dcm转换到L:/dcmtk/testWLMSCPFS/OFFIS目录下,用如下语句启动

wlmscpfs -v -dfp "L:/dcmtk/testWLMSCPFS" 666

 

客户端,把dcmtk-3.5.4/dcmwlm/wlistqry目录下的文件通过dump2dcm转换到L:/dcmtk/testWLMSCPFS/wlistqry目录下,用如下语句启动

findscu 127.0.0.1 666 -aec "OFFIS" -k 0010,0010="VIVALDI^ANTONIO" -k 0010,0020 -k 0010,0030  -v L:/dcmtk/testWLMSCPFS/wlistqry/wlistqry0.dcm

 

这时,不管-k使用什么参数,服务器都返回

C-Find RSP: MsgID: 1 [Status=Success]

  AffectedSOPClassUID: =FINDModalityWorklistInformationModel

  Data Set: Not Present

Releasing Association

 

跟踪服务器端代码,发现WlmFileSystemInteractionManager::DetermineMatchingRecords中288行,如下代码DatasetIsComplete总是返回False,

if( enableRejectionOfIncompleteWlFiles && !DatasetIsComplete( dataset ) )

导致不进行数据查询,感觉是enableRejectionOfIncompleteWlFiles 这个变量没有初始化,检查代码,发现它被初始化为True,检查初始化代码,原来在WlmDataSourceFileSystem::ConnectToDataSource中进行的初始化,而WlmConsoleEngineFileSystem::WlmConsoleEngineFileSystem初始化时就接受--disable-file-reject这个参数,因此决定添加--disable-file-reject这个参数,修改服务器启动参数如下:

wlmscpfs -v -dfp "L:/dcmtk/testWLMSCPFS" 666 --disable-file-reject

这样服务器就可以返回匹配-k的数据了

 

要注意:findscu 中的参数 -k 0010,0020 -k 0010,0030 是不带值的,作用是让服务器返回这两个-k表示的值。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/289856
推荐阅读
相关标签
  

闽ICP备14008679号