- 浏览: 3415509 次
- 性别:
- 来自: 苏州
文章分类
最新评论
-
sonichy:
Qt5改动很多,要改改了。
基于QItemDelegate的例子1 SpinBoxDelegate -
我的主页6:
楼主,2.2子查询的分页方式:SELECT * FROM ar ...
Mysql 分页语句Limit用法 -
liguoqi:
非常感谢楼主的用心指导,工具以及图片例子都提供了 赞!
两款免费DCIOM 图像浏览软件介绍和DICOM图像例子供下载 -
liguoqi:
问下这个图片怎么解压损坏呀
两款免费DCIOM 图像浏览软件介绍和DICOM图像例子供下载 -
liguoqi:
楼主讲解的非常详细,还附带工具和图片例子,非常感谢
两款免费DCIOM 图像浏览软件介绍和DICOM图像例子供下载
前言:
虽然写了这么一大堆,实际过程很简单,大家耐心看完,绝对能成功。我已经在我的办公电脑和我的影像工作站上,都成功实现了。(简单文字版,请看这篇《DCMTK3.6.0(MD支持库)安装说明-无图版》)
DCMTk3.5.4安装类似于下面,但是CMake生成的时候,可以直接界面上修改,因为3.5.4和3.6.0的CMakeLists.txt很多地方已经不一样了,之间的区别可以参考这篇文章《DCMTK3.5.4与3.6.0版本的区别》
柳北风儿
qimo601@126.com
2012-06-07
一、运行环境:WIN7 32bit + VisualStudio2008 + dcmtk3.6.0 + Cmake2.8.8
或者 WIN7 64bit
二、准备工作:
1)MD/MT的知识储备:
/MT和/MTd表示采用多线程CRT库的静态lib版本。该选项会在编译时将运行时库以静态lib的形式完全嵌入。该选项生成的可执行文件运行时不需要运行时库dll的参加,会获得轻微的性能提升,但最终生成的二进制代码因链入庞大的运行时库实现而变得非常臃肿。当某项目以静态链接库的形式嵌入到多个项目,则可能造成运行时库的内存管理有多份,最终将导致致命的“Invalid Address specified to RtlValidateHeap”问题。另外托管C++和CLI中不再支持/MT和/MTd选项。
/MD和/MDd表示采用多线程CRT库的动态dll版本,会使应用程序使用运行时库特定版本的多线程DLL。链接时将按照传统VC链接dll的方式将运行时库MSVCRxx.DLL的导入库MSVCRT.lib链接,在运行时要求安装了相应版本的VC运行时库可再发行组件包(当然把这些运行时库dll放在应用程序目录下也是可以的)。 因/MD和/MDd方式不会将运行时库链接到可执行文件内部,可有效减少可执行文件尺寸。当多项目以MD方式运作时,其内部会采用同一个堆,内存管理将被简化,跨模块内存管理问题也能得到缓解。
结论:/MD和/MDd将是潮流所趋,/ML和/MLd方式请及时放弃,/MT和/MTd在非必要时最好也不要采用了。
2)下载软件:
②dcmtk-3.6.0-win32-i386-support_MD.zip(注意,要下载***support_MD的压缩文件,而不要下载上面单独列出来的支持库)。我选择的MD,因为我的软件项目都是基于MD的运行时库。(您也可以选择dcmtk-3.6.0-win32-i386-support_MT.zip,如果您的项目是基于MT。通过项目属性的C/C++->code generation 可以更改运行时库)将这些压缩文件解压缩到硬盘上一个单独的文件夹里,我的解压缩目录是D:\DCMTK\。
③从cmake官方网站下载cmake的安装文件,我下载的是cmake-2.8.8-win32-x86.exe。将其安装到计算机任意目录下。
④dcmtk-3.6.0-html-help.zip,dcmtk html版本帮助文档,CHM版本暂时还未出。
#include "testa.h" #include <QtGui/QApplication> #include <QDebug> #include "dcmtk/config/osconfig.h" #include "dcmtk/dcmdata/dctk.h" int main(int argc, char *argv[]) { QApplication a(argc, argv); TestA w; w.show(); DcmFileFormat fileformat; OFCondition oc = fileformat.loadFile("111.dcm"); if(oc.good()){ OFString patientName; if(fileformat.getDataset()->findAndGetOFString(DCM_PatientName, patientName).good()) { qDebug()<<"Patient Name:"<<patientName.data(); } } return a.exec(); }
- 111.DCM.rar (228 KB)
- 下载次数: 112
评论
dcm文件没放在debug下吧,写成绝对路径试试
dcmdata.lib(dcuid.obj) : error LNK2019: 无法解析的外部符号 _WSACleanup@0,该符号在函数 "long __cdecl gethostid(void)" (?gethostid@@YAJXZ) 中被引用
这个错误请问如何解决
首先恭喜您编译成功。
你的问题,我估计是在使用lib的方法上有问题。
你参考本文最后的例子,请确认lib文件引入的顺序,以及是否有遗漏。
DCMTK的lib文件顺序大致如下:
wsock32.lib
netapi32.lib
ofstd.lib
oflog.lib
dcmdata.lib
dcmnet.lib
dcmimage.lib
dcmimgle.lib
zlib.lib
如果载入顺序错了,会有编译错误的。
如果您有最新进展可以通知我,我的最新博客[url= http://blog.163.com/qimo601@126]http://blog.163.com/qimo601@126[/url]
我用命令:
dcmprscp.exe -c dcmpstat.cfg -p IHEFULL
启动了SCP,
用命令:
dcmpsprt.exe -s -c dcmpstat.cfg -p IHEFULL CT.dcm
生成了HG和SP文件,
用命令:
dcmprscu -d -v +d -c dcmpstat.cfg SP_XX.dcm
打印出了一些信息,但是scp端并没有使用默认的打印机打印出来啊,难道说dcmprscp不能作为打印服务器?求指点啊。谢谢了。
兄弟,打印这块,我暂时还没用到。
但是我看到冷老师一篇文章写的非常详细,或许对你有帮助。
你按照他的步骤,应该是可以实现打印的。里面需要配置网络,以及要修改 C:/DICOM/Source/dcmpstat.cfg配置文件的信息。
希望您能成功。最好能总结一下,跟大家共享一下您的实验心得。
冷老师的DCMTK打印文章链接:http://qimo601.iteye.com/blog/1555204
我用命令:
dcmprscp.exe -c dcmpstat.cfg -p IHEFULL
启动了SCP,
用命令:
dcmpsprt.exe -s -c dcmpstat.cfg -p IHEFULL CT.dcm
生成了HG和SP文件,
用命令:
dcmprscu -d -v +d -c dcmpstat.cfg SP_XX.dcm
打印出了一些信息,但是scp端并没有使用默认的打印机打印出来啊,难道说dcmprscp不能作为打印服务器?求指点啊。谢谢了。
发表评论
-
医学影像期刊总结
2012-06-08 10:41 31871、《中国医学影像学杂志》 是由中华人民共和国卫生部主管、中 ... -
DCMTK3.6.0(MD支持库)安装说明-无图版
2012-06-08 10:07 4815不知道为啥ItEye只能显示日志文字的部分内容,本篇日志完整版 ... -
DCMTK的Lib 引用顺序
2012-06-07 14:24 3260我们知道,在引用lib的时候,只需要配置项目属性 ... -
DCMTK3.5.4与3.6.0版本的区别
2012-06-07 13:30 6572首先要明白DCMTK默认选择的/MT和/MTd的运行时库。 ... -
官方DCMTK的安装步骤
2012-06-07 13:22 8474官方安装DCMTK3.6.0的步骤: 详细中文安装步 ... -
DCMTK3.6.0 安装失败的说明
2012-06-07 10:59 4264前两天,参考这个例子DCMTK3.6.0 (MT支持库)安装 ... -
DCMTK3.6.0 (MT支持库)安装 完整说明
2012-06-06 11:21 95416月7日 13:58 更新 MD项目的,请参考这篇 《DCMT ... -
DCMTK 安装错误总结
2012-06-05 17:18 0Compilation of DCMTK-based p ... -
dcmtk 3.6.0 error C1083: Cannot open include file: 'iostream.h' 解决办法
2012-06-05 10:36 32532011年1月6日发布的dcmtk 3.6.0版本在编 ... -
defaultlib "library" conflicts with use of other libs; use /NODEFAULTLIB:library
2012-06-04 20:31 8671我在Qt的Gui项目中,加入DCMTK编译后的MD/MDd运行 ... -
warning LNK4098: defaultlib "MSVCRT" conflicts with use of other libs; use /NODE
2012-06-04 19:15 4840刚编译了DCMTK,运行一个小例子,出现如此错误: ... -
VC 运行时库 /MD、/MDd 和 /MT、/MTd
2012-06-04 14:03 27606这里总结下他们的区别,后面的那个'd'是代表DEBUG版本,没 ... -
两款免费DCIOM 图像浏览软件介绍和DICOM图像例子供下载
2012-05-22 14:53 37488最近要开发医学图像处理软件,所以先搜了一些可以读取DCM ...
相关推荐
Dcmtk3.6.0, 如果从头开始理解DICOM的协议,然后完全自己编写这些代码来实现这些协议,是一件工程浩大的事情。德国offis公司开发的DCMTK,为我们提供了实现DICOM协议的一个平台,使得我们可以在它的基础上轻松的完成...
DCMTK编译文件说明。DCMTK3.6.0
dcmtk-3.6.0版本编译出的动态库文件,包含Debug和Release版本。
做了一个DCMTK 3.6.0版本的CHM帮助文件,拿上来共享一下;有些粗糙,大家不要介意。
dcmtk-3.6.0-win32-i386-support_MD 支持库
Dicom 源码 dcmtk-3.6.0.zip
linux 系统下DCMTK3.6.0源码
DCMTK开源库在VS2012中的环境配置后的实例工程
DCMTK3.6.2+VS2015(MD支持版)编译和安装示范,本文的编译机器是Windows10 64位系统,使用VS2015和cmake3.7.2编译DCMTK源码为64位包(运行时库为MD或MDd)。
包括dcmtk-3.6.0、dcmtk-3.6.0-win32-i386-support_MD和dcmtk-3.6.0-html-help(英文版),同时,附带cmake-3.2.2-win32-x86。 在win7旗舰版32位+VS2005下亲测编译通过,没有问题。
dcmtk-3.6.0帮助文档chm版
dcmtk-3.6.0官方帮助文档,打开可以直接查看函数。类,方法。完整
找不到,只能自己编译DCMTK3.6.0库,上传一下解决大众之痛
Windows平台下,Qt(5.10)32位环境下编译的dcmtk(3.6.3)库,包含debug和release版
DCMTK3.5.4的include库,已经编译好的,直接使用即可~~
DCMTK3.5.4的lib库,已经编译好的,直接使用就好~
DCMTK编译好的库文件,ide VS2017,WIN系统下可以使用,有include、lib目录,到时候直接引文件就好。Dcm库
支持读取医学影像DCMTK文件,实现加载医学的X光片的数据加载。
前段时间开发项目用到DICOM库,编译好了上传上来,包括相关库、过程文档和cmake构建好的VS2015项目,要生成64,32,debug,release自己设置