void CStationDlg::OnClickedDecodeh(void) { CEdit *cetodo = (CEdit *) CWnd::GetDlgItem(IDC_TODO1); int i,j; cetodo->GetSel(i,j); // NT SPECIFIC HLOCAL h = cetodo->GetHandle(); LPCTSTR lpszText = (LPCTSTR)LocalLock(h); char res[1000]; strncpy(res,&(lpszText[i]),j-i); SetDlgItemText(IDC_DECDEC,res); unsigned short f; unsigned char *pf; unsigned int b1,b2; pf = (unsigned char *)&f; sscanf(res,"%x %x",&b1,&b2); pf[0] = b1; pf[1] = b2; CString sres; sres.Format("%04X = %d",f,f); SetDlgItemText(IDC_DECFLOAT,sres); LocalUnlock(h); // END OF NT SPECIFIC }
void CStationDlg::OnClickedDecodesel(void) { CEdit *cetodo = (CEdit *) CWnd::GetDlgItem(IDC_TODO1); int i,j; cetodo->GetSel(i,j); // NT SPECIFIC HLOCAL h = cetodo->GetHandle(); LPCTSTR lpszText = (LPCTSTR)LocalLock(h); char res[1000]; strncpy(res,&(lpszText[i]),j-i);res[j-i] = 0; CString sres = res; sres.Replace("\r\n",""); SetDlgItemText(IDC_DECDEC,sres); float f; unsigned char *pf; unsigned int b1,b2,b3,b4; pf = (unsigned char *)&f; sscanf(sres,"%x %x %x %x",&b1,&b2,&b3,&b4); pf[0] = b1; pf[1] = b2; pf[2] = b3; pf[3] = b4; sres.Format("%g",f); SetDlgItemText(IDC_DECFLOAT,sres); LocalUnlock(h); // END OF NT SPECIFIC }