新窗口弹出有关问题

新窗口弹出问题
在list control中 添加了鼠标移动到某一项上的函数 ,想在某一项上 触发填出新窗口 新窗口dilog_ce 定义了一个他的变量dilog_ce org;  
  dilog_ce org;  
  if(pNMListView->iSubItem == 5&&befor==after){
  after=pNMListView->iItem;
  TCHAR szBuf[1024]={0};
  LVITEM lvi;
   
  lvi.iItem = pNMListView->iItem;
  lvi.iSubItem = 6;
  lvi.mask = LVIF_TEXT;
  lvi.pszText = szBuf;
  lvi.cchTextMax = 1024;
  LC_search_result.GetItem(&lvi);
  strcpy(org.yum,szBuf);  
这样获得数据 
 LC_search_result.SetItemText(0,0,chengj);
  LC_search_result.SetItemText(0,1,kuaiz);
  LC_search_result.SetItemText(0,2,paim);
  LC_search_result.SetItemText(0,3,lianj);
新窗口这么个输出 
char paim[1024];
  char lianj[1024];
  char fengg[1024];

使用org.DoModal(); 出的新窗口数据正确而 thisid->ShowWindow(SW_SHOW);出的数据都是屯 
、我想在鼠标移开的时候关闭这个窗口 使用DoModal() 不知道怎么关 就使用ShowWindow() 实现了但是数据异常叫我非常的纠结。。
各位 大大 交交我

------解决方案--------------------
既然要响应鼠标离开,就不能用DoModal。
关闭的话用DestroyWindow。
------解决方案--------------------
DoModal 直接OnClose()

非模态的话 就DestroyWindow()
在OnDestroy 中delete this