private void SendImgToPax() { DcmStudy stu = new DcmStudy(); stu.strExamAccessionNum = mStudy.EXAM_ACCESSION_NUM; stu.strStudyUID = mStudy.STUDY_INSTANCE_UID; stu.strPatientID = mStudy.PATIENT_ID; stu.strPatientLocalID = mStudy.STUDY_ID; stu.strPatientName = mStudy.PATIENT_NAME; stu.strPatientSex = mStudy.PATIENT_SEX; stu.nPatientAge = (int)mStudy.PATIENT_AGE; stu.strPatientAgeUnit = mStudy.PATIENT_AGE_UNIT; stu.nSeriesNum = 1; stu.nInstanceNum = 0; stu.strStudyDate = ((DateTime)mStudy.STUDY_DATE_TIME).ToString("yyyyMMdd"); // stu.strStudyTime = ((DateTime)mStudy.STUDY_DATE_TIME).ToString("hhmmss.0"); stu.strInputFileList = this.ImgSave; // stu.strOutputFileList = GetDcmOutFile(this.ImgSave); // stu.strOutputFilePath = Application.StartupPath + "\\DCM\\"; stu.strModality = mStudy.MODALITY; stu.strManufacturer = "EC"; stu.strAppVersionName = "E-Charm"; stu.nTransferSyntaxUID = 0; //0,DCM默认语法;1: stu.bHaltOnEncounteredUnsucc = false; //遇到失败,是否退出 DcmInterface dcm = new DcmInterface(); dcm.JPGToDCM(stu); }
/// <summary> /// /// </summary> /// <param name="paths">path1;path2;path3</param> /// <param name="dcm"></param> /// <returns></returns> public bool JPGToDCM(DcmStudy dcm) { //string SaveDcmDic = Application.StartupPath + "\\DCM\\"; //string outFiles = ""; //for (int i = 0; i < paths.Split(';').Length; i++) //{ // outFiles += i.ToString() + ".dcm;"; //} //outFiles.TrimEnd(';'); sReturnInfItem result = FpaxConvertImagesToDCM(dcm.strExamAccessionNum, dcm.strStudyUID, dcm.strPatientID, dcm.strPatientLocalID, dcm.strPatientName, dcm.strPatientSex, dcm.nPatientAge, dcm.strPatientAgeUnit, dcm.nSeriesNum, dcm.nInstanceNum, dcm.strStudyDate, // dcm.strStudyTime, // dcm.strInputFileList, // dcm.strOutputFileList, // dcm.strOutputFilePath, dcm.strModality, dcm.strManufacturer, dcm.strAppVersionName, dcm.nTransferSyntaxUID, //0,DCM默认语法;1: dcm.bHaltOnEncounteredUnsucc //遇到失败,是否退出 ); //目前仅适用于RGB图像 //FpaxConvertImagesToDCM(dt.Rows[0]["Exam_accession_num"].ToString(), dt.Rows[0]["study_instance_uid"].ToString(), // dt.Rows[0]["patient_id"].ToString(),dt.Rows[0]["study_id"].ToString(), // dt.Rows[0]["patient_name"].ToString(), dt.Rows[0]["patient_sex"].ToString(), // int.Parse(dt.Rows[0]["patient_age"].ToString()), dt.Rows[0]["patient_age_unit"].ToString(), // 1, 0, // Convert.ToDateTime(dt.Rows[0]["study_date_time"].ToString()).ToString("yyyyMMdd"),Convert.ToDateTime(dt.Rows[0]["study_date_time"].ToString()).ToString("hhmmss.0"), // paths, outFiles, SaveDcmDic, // GetConfig.Modality, "EC", // "E-Charm", 0, false); //string DcmPath = SaveDcmDic + outFiles.TrimEnd(';').Replace(".dcm;", ".dcm;" + SaveDcmDic) + ";"; //DcmPath = SaveDcmDic + "4.dcm"; IntPtr pInt = (IntPtr)0; string DcmPaths = dcm.strOutputFilePath + dcm.strOutputFileList.TrimEnd(';').Replace(".dcm;", ".dcm;" + dcm.strOutputFilePath) + ";"; m_sReturnItem = FpaxStoreDCMSToOneSCP(DcmPaths, GetConfig.DcmServerAE, GetConfig.DcmIp, GetConfig.DcmPort, GetConfig.LocalAE, GetConfig.LocalIp, true, 20, false, false, false, 0, m_pCallBack, pInt); if (m_sReturnItem.m_nReturnCode != 1) { MessageBoxEx.Show("传送图片到PACS失败!请检查网络连接", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { if (dcm.strInputFileList.Split(';').Length > m_sReturnItem.m_nImgIndex) { int failCount = dcm.strInputFileList.Split(';').Length - m_sReturnItem.m_nImgIndex; MessageBoxEx.Show(failCount.ToString() + "个图象传送到PACS失败!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); } } return(true); }