DCMTK为静态Lib库,为了在C#中进行调用,需要封装为Dll。即根据需要,建立一个新的VC++ DLL,把相关Lib的应用进去。
使用的版本为dcmtk-3.6.1,CMAKE版本为2.8.8, MD为dcmtk-3.6.0-win32-i386-support_MD。
1. 按介绍,使用CMAKE创建在VS2010可用的DCMTK工程。
参见“http://bbs.hc3i.cn/thread-26234-1-1.html”
2. 建立测试DLL, DcmDataDll.
在cpp中包含对应的.h文件。
#include "dcmtk/dcmdata/dcfilefo.h"
#include "dcmtk/dcmdata/dcdeftag.h"
// This is an example of an exported function.
DCMDATAWIN32_API int fnTest(void)
{
DcmFileFormat fileformat;
OFCondition status = fileformat.loadFile("test.dcm");
if (status.good())
{
OFString patientsName;
if (fileformat.getDataset()->findAndGetOFString(DCM_PatientName, patientsName).good())
&n
使用的版本为dcmtk-3.6.1,CMAKE版本为2.8.8, MD为dcmtk-3.6.0-win32-i386-support_MD。
1. 按介绍,使用CMAKE创建在VS2010可用的DCMTK工程。
参见“http://bbs.hc3i.cn/thread-26234-1-1.html”
2. 建立测试DLL, DcmDataDll.
在cpp中包含对应的.h文件。
#include "dcmtk/dcmdata/dcfilefo.h"
#include "dcmtk/dcmdata/dcdeftag.h"
// This is an example of an exported function.
DCMDATAWIN32_API int fnTest(void)
{
DcmFileFormat fileformat;
OFCondition status = fileformat.loadFile("test.dcm");
if (status.good())
{
OFString patientsName;
if (fileformat.getDataset()->findAndGetOFString(DCM_PatientName, patientsName).good())
&n

本文档详细介绍了如何将DCMTK静态库封装为DLL,以便在C#环境中调用。首先,使用CMAKE创建适用于VS2010的DCMTK工程,然后建立测试DLL项目DcmDataDll,并在其中包含必要的头文件。在编译过程中遇到的LNK2001和LNK2019错误通过添加相应库和链接输入解决。最后,通过调整项目设置,成功解决所有链接错误并完成封装。
最低0.47元/天 解锁文章
560

被折叠的 条评论
为什么被折叠?



