DCMTK movescu错误:响应成功,但未收到文件

时间:2018-11-04 02:15:52

标签: windows dicom dcmtk

我是DICOM和DCMTK的新手。我试图使用Windows平台中的movescu命令从专用PACS服务器(172.18.1.1)中检索dcm文件。传入和传出消息正常,但在指定目录中未接收到数据。命令如下:

movescu.exe -d -S -aec GEPACS -aet TEST1  -od c:\windows\dcmtk\dcm 172.18.1.1 4100 -k QueryRetrieveLevel=STUDY -k StudyInstanceUID=1.2.840.113619.186.351258914078.20100708160459594.417

输出消息如下:

>D: $dcmtk: movescu v3.6.3 2018-02-05 $
>D:
>D: Request Parameters:
>D: ====================== BEGIN A-ASSOCIATE-RQ =====================
>D: Our Implementation Class UI>D:      1.2.276.0.7230010.3.0.3.6.3
>D: Our Implementation Version Name:   OFFIS_DCMTK_363
>D: Their Implementation Class UI>D:
>D: Their Implementation Version Name:
>D: Application Context Name:    1.2.840.10008.3.1.1.1
>D: Calling Application Name:    TEST1
>D: Called Application Name:     GEPACS
>D: Responding Application Name: GEPACS
>D: Our Max PDU Receive Size:    16384
>D: Their Max PDU Receive Size:  0
>D: Presentation Contexts:
>D:   Context I>D:        1 (Proposed)
>D:     Abstract Syntax: =FINDStudyRootQueryRetrieveInformationModel
>D:     Proposed SCP/SCU Role: Default
>D:     Proposed Transfer Syntax(es):
>D:       =LittleEndianExplicit
>D:       =BigEndianExplicit
>D:       =LittleEndianImplicit
>D:   Context I>D:        3 (Proposed)
>D:     Abstract Syntax: =MOVEStudyRootQueryRetrieveInformationModel
>D:     Proposed SCP/SCU Role: Default
>D:     Proposed Transfer Syntax(es):
>D:       =LittleEndianExplicit
>D:       =BigEndianExplicit
>D:       =LittleEndianImplicit
>D: Requested Extended Negotiation: none
>D: Accepted Extended Negotiation:  none
>D: Requested User Identity Negotiation: none
>D: User Identity Negotiation Response:  none
>D: ======================= END A-ASSOCIATE-RQ ======================
>I: Requesting Association
>D: setting network send timeout to 60 seconds
>D: setting network receive timeout to 60 seconds
>D: Constructing Associate RQ PDU
>D: PDU Type: Associate Accept, PDU Length: 208 + 6 bytes PDU header
>D:   02  00  00  00  00  d0  00  01  00  00  47  45  50  41  43  53
>D:   20  20  20  20  20  20  20  20  20  20  41  45  5f  41  52  43
>D:   48  31  20  20  20  20  20  20  20  20  00  00  00  00  00  00
>D:   00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00
>D:   00  00  00  00  00  00  00  00  00  00  10  00  00  15  31  2e
>D:   32  2e  38  34  30  2e  31  30  30  30  38  2e  33  2e  31  2e
>D:   31  2e  31  21  00  00  1b  01  00  00  00  40  00  00  13  31
>D:   2e  32  2e  38  34  30  2e  31  30  30  30  38  2e  31  2e  32
>D:   2e  31  21  00  00  1b  03  00  00  00  40  00  00  13  31  2e
>D:   32  2e  38  34  30  2e  31  30  30  30  38  2e  31  2e  32  2e
>D:   31  50  00  00  31  51  00  00  04  00  00  70  00  52  00  00
>D:   13  31  2e  32  2e  38  34  30  2e  31  31  33  36  31  39  2e
>D:   36  2e  39  34  55  00  00  0e  43  45  4e  54  52  49  43  49
>D:   54  59  5f  34  2e  30
>D: Parsing an A-ASSOCIATE PDU
>D: Association Parameters Negotiate>D:
>D: ====================== BEGIN A-ASSOCIATE-AC =====================
>D: Our Implementation Class UI>D:      1.2.276.0.7230010.3.0.3.6.3
>D: Our Implementation Version Name:   OFFIS_DCMTK_363
>D: Their Implementation Class UI>D:    1.2.840.113619.6.94
>D: Their Implementation Version Name: CENTRICITY_4.0
>D: Application Context Name:    1.2.840.10008.3.1.1.1
>D: Calling Application Name:    TEST1
>D: Called Application Nae:     GEPACS
>D: Responding Application Name: GEPACS
>D: Our Max PDU Receive Size:    16384
>D: Their Max PDU Receive Size:  28672
>D: Presentation Contexts:
>D:   Context I>D:        1 (Accepted)
>D:     Abstract Syntax: =FINDStudyRootQueryRetrieveInformationModel
>D:     Proposed SCP/SCU Role: Default
>D:     Accepted SCP/SCU Role: Default
>D:     Accepted Transfer Syntax: =LittleEndianExplicit
>D:   Context I>D:        3 (Accepted)
>D:     Abstract Syntax: =MOVEStudyRootQueryRetrieveInformationModel
>D:     Proposed SCP/SCU Role: Default
>D:     Accepted SCP/SCU Role: Default
>D:     Accepted Transfer Syntax: =LittleEndianExplicit
>D: Requested Extended Negotiation: none
>D: Accepted Extended Negotiation:  none
>D: Requested User Identity Negotiation: none
>D: User Identity Negotiation Response:  none
>D: ======================= END A-ASSOCIATE-AC ======================
>I: Association Accepted (Max Send PDV: 28660)
>I: Sending Move Request
>D: ===================== OUTGOING DIMSE MESSAGE ====================
>D: Message Type                  : C-MOVE RQ
>D: Presentation Context ID       : 3
>D: Message ID                    : 1
>D: Affected SOP Class UID        : MOVEStudyRootQueryRetrieveInformationModel
>D: Data Set                      : present
>D: Priority                      : medium
>D: Move Destination              : TEST1
>D: ======================= END DIMSE MESSAGE =======================
>I: Request Identifiers:
>I:
>I: # Dicom-Data-Set
>I: # Used TransferSyntax: Little Endian Explicit
>I: (0008,0052) CS [STUDY]                                  #   6, 1 QueryRetrieveLevel
>I: (0020,000d) UI [1.2.840.113619.186.351258914078.20100708160459594.417] #  54, 1 StudyInstanceUID
>I:
>D: DcmDataset::read() TransferSyntax="Little Endian Implicit"
>I: Received Final Move Response
>D: ===================== INCOMING DIMSE MESSAGE ====================
>D: Message Type                  : C-MOVE RSP
>D: Message ID Being Responded To : 1
>D: Affected SOP Class UID        : MOVEStudyRootQueryRetrieveInformationModel
>D: Remaining Suboperations       : none
>D: Completed Suboperations       : 6
>D: Failed Suboperations          : 0
>D: Warning Suboperations         : 0
>D: Data Set                      : none
>D: DIMSE Status                  : 0x0000: Success
>D: ======================= END DIMSE MESSAGE =======================
>I: Releasing Association

我也尝试添加--port 104或-aem TEST1,但均失败。

2 个答案:

答案 0 :(得分:1)

movescu的默认“移动目的地”(选项-aem)为“ MOVESCU”。您的PACS是否了解有关此AE标题的任何信息?似乎6个DICOM SOP实例(“完成的子操作:6”)已成功发送到此AE(应用程序实体)。输出目录(选项-od)仅在movescu兼用作存储SCP时使用,即,如果使用选项--port(或+ P)。

  

我也尝试添加--port 104或-aem TEST1,但均失败。

您是否已将PACS配置为将AE标题“ TEST1”映射到正在运行的系统movecu的IP地址并映射到端口104?

答案 1 :(得分:1)

C-MOVE操作似乎成功:

>I: Received Final Move Response
>D: ===================== INCOMING DIMSE MESSAGE ====================
>D: Message Type                  : C-MOVE RSP
>D: Message ID Being Responded To : 1
>D: Affected SOP Class UID        : MOVEStudyRootQueryRetrieveInformationModel
>D: Remaining Suboperations       : none
>D: Completed Suboperations       : 6
>D: Failed Suboperations          : 0
>D: Warning Suboperations         : 0
>D: Data Set                      : none
>D: DIMSE Status                  : 0x0000: Success
>D: ======================= END DIMSE MESSAGE =======================

根据来自服务器的消息,成功完成了6个子操作(即,将6张图像移动到了移动目的地),并且状态为“成功”。因此,我怀疑AET“ TEST1”会映射到其他系统,而不是您的系统。

按照J. Riesmeier的建议,您应该在PACS中检查“ TEST1”的IP和端口配置。