# include“ltdic.h”
L_LTDIC_APIL_INTL_DicomGetUserInfoCount (hPDU)
返回指定DICOM关联中用户定义项的数量。
一个DICOM关联句柄。
指定DICOM关联中用户定义项的数量。
有关自定义项的更多信息,请参见L_DicomAddUserInfo.
必需的dll和库
Win32, x64, Linux。
# include < windowsx.h >L_INT DicomGetUserInfoCountExample(HDICOMPDU hPDU){L_UCHAR我;L_UCHAR nType;L_UINT16 nLen;L_TCHAR szMsg [8000];L_UCHAR * pData =零;L_TCHAR * pTemp =零;L_TCHAR szTest1[] ={文本(“只是测试\0”)};L_TCHAR szTest2[] ={文本(“第二次测试\0”)};L_INT nRet;获取当前用户信息类型,长度和数据,然后显示它们*/lstrcpy (szMsg文本(“当前用户类型、长度、数据:”));如果(L_DicomGetUserInfoCount(hPDU) > 0){为(i = 0;我< L_DicomGetUserInfoCount (hPDU);我+ +){nType = L_DicomGetTypeUserInfo(hPDU, i);nLen = L_DicomGetLengthUserInfo(hPDU, i);pData = L_DicomGetDataUserInfo(hPDU, i);//假设数据是unicode文本pTemp = (L_TCHAR *)GlobalAllocPtr(GMEM_MOVEABLE, nLen);如果(pTemp == NULL)返回ERROR_NOT_ENOUGH_MEMORY;memcpy(pTemp, pData, nLen);wsprintf (szMsg文本("Type =%d\tLength=%d\nData = "), nType, nLen);lstrcat (szMsg文本(“\ n”));lstrcat (szMsg pTemp);GlobalFreePtr (pTemp);pTemp = NULL;}}其他的lstrcat (szMsg文本(“\ nNone”));消息框(NULL, szMsg, TEXT(“测试”), MB_OK);/*添加用户信息项*/lstrcpy (szMsg文本(“添加用户信息项”));nRet = L_DicomAddUserInfo(hPDU, 99, (L_UCHAR *)szTest1, (L_UCHAR *)lstrlen(szTest1) *运算符(L_TCHAR));如果(nRet != DICOM_SUCCESS)返回nRet;如果(L_DicomGetUserInfoCount(hPDU) > 0){为(i = 0;我< L_DicomGetUserInfoCount (hPDU);我+ +){nType = L_DicomGetTypeUserInfo(hPDU, i);nLen = L_DicomGetLengthUserInfo(hPDU, i);pData = L_DicomGetDataUserInfo(hPDU, i);pTemp = (L_TCHAR *)GlobalAllocPtr(GMEM_MOVEABLE, nLen+2);如果(pTemp == NULL)返回ERROR_NOT_ENOUGH_MEMORY;memset(pTemp, 0, nLen +2);memcpy(pTemp, pData, nLen);lstrcat (szMsg文本(“\ n”));wsprintf (szMsg文本("Type =%d\tLength=%d\nData = "), nType, nLen);lstrcat (szMsg pTemp);GlobalFreePtr (pTemp);pTemp = NULL;}}其他的lstrcat (szMsg文本(“\ nNone”));消息框(NULL, szMsg, TEXT(“测试”), MB_OK);/ *为每一个用户信息项,更改数据*/为(i = 0;我< L_DicomGetUserInfoCount (hPDU);我+ +){nType = L_DicomGetTypeUserInfo(hPDU, i);nRet = L_DicomSetUserInfo(hPDU, i, nType, (L_UCHAR *)szTest2, (L_UINT16)lstrlen(szTest2) *运算符(L_TCHAR));如果(nRet != DICOM_SUCCESS)返回nRet;}lstrcpy (szMsg文本(“更改用户数据”));如果(L_DicomGetUserInfoCount(hPDU) > 0){为(i = 0;我< L_DicomGetUserInfoCount (hPDU);我+ +){nType = L_DicomGetTypeUserInfo(hPDU, i);nLen = L_DicomGetLengthUserInfo(hPDU, i);pData = L_DicomGetDataUserInfo(hPDU, i);pTemp = (L_TCHAR *)GlobalAllocPtr(GMEM_MOVEABLE, nLen+2);如果(pTemp == NULL)返回ERROR_NOT_ENOUGH_MEMORY;memset(pTemp, 0, nLen +2);memcpy(pTemp, pData, nLen);lstrcat (szMsg文本(“\ n”));wsprintf (szMsg文本("Type =%d\tLength=%d\nData = "), nType, nLen);lstrcat (szMsg pTemp);GlobalFreePtr (pTemp);pTemp = NULL;}}其他的lstrcat (szMsg文本(“\ nNone”));消息框(NULL, szMsg, TEXT(“测试”), MB_OK);/ *删除我们加了*/L_DicomDelUserInfo(hPDU, L_DicomGetUserInfoCount(hPDU) - 1);lstrcpy (szMsg文本(“删除已添加用户”));如果(L_DicomGetUserInfoCount(hPDU) > 0){为(i = 0;我< L_DicomGetUserInfoCount (hPDU);我+ +){nType = L_DicomGetTypeUserInfo(hPDU, i);nLen = L_DicomGetLengthUserInfo(hPDU, i);pData = L_DicomGetDataUserInfo(hPDU, i);pTemp = (L_TCHAR *)GlobalAllocPtr(GMEM_MOVEABLE, nLen+2);如果(pTemp == NULL)返回ERROR_NOT_ENOUGH_MEMORY;memset(pTemp, 0, nLen +2);memcpy(pTemp, pData, nLen);lstrcat (szMsg文本(“\ n”));wsprintf (szMsg文本("Type =%d\tLength=%d\nData = "), nType, nLen);lstrcat (szMsg pTemp);GlobalFreePtr (pTemp);pTemp = NULL;}}其他的lstrcat (szMsg文本(“\ nNone”));消息框(NULL, szMsg, TEXT(“测试”), MB_OK);返回DICOM_SUCCESS;}
帮助收藏
光栅net|C API|c++类库|HTML5 JavaScript
文档net|C API|c++类库|HTML5 JavaScript
医疗net|C API|c++类库|HTML5 JavaScript
医疗网络查看器net
188宝金博怎么下载
支持的平台上
.NET、Java、Android和iOS/macOS程序集
C API/ c++类库
HTML5 JavaScript库
您的邮件已发送给技术支持!应该有人联系!如果你的事情很紧急,请回来聊天。
聊天时间:
周一至周五,美国东部时间上午8:30至下午6:00
感谢您的反馈!
请再次填写表格,开始新的聊天。
所有代理目前都离线。
聊天时间:
星期一至星期五
美国东部时间上午8:30 -下午6点
如需与我们联系,请填写此表格,我们将通过电子邮件与您联系。
