// ManageTKDlg.cpp : implementation file // #include "stdafx.h" #include "ManageTKDlg.h" #include "NewTKWDlg.h" #include "TkwFile.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif extern CString GetFileNameByAllName(const TCHAR* szAllFileName); extern CString GetPathNameByAllName(const TCHAR* szAllFileName); int TKMgr() { CManageTKDlg dlg; CTemporaryResourceOverride vTmp; dlg.DoModal(); return RTNORM; } ///////////////////////////////////////////////////////////////////////////// // CManageTKDlg dialog CManageTKDlg::CManageTKDlg(CWnd* pParent /*=NULL*/) : CDialog(CManageTKDlg::IDD, pParent) { //{{AFX_DATA_INIT(CManageTKDlg) m_csDwb = _T(""); m_csDwb3d = _T(""); m_csSlb = _T(""); m_csText = _T(""); //}}AFX_DATA_INIT } void CManageTKDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CManageTKDlg) DDX_Text(pDX, IDC_EDIT_ERR, m_csText); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CManageTKDlg, CDialog) //{{AFX_MSG_MAP(CManageTKDlg) ON_BN_CLICKED(IDC_BUTTON_DEL, OnButtonDel) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CManageTKDlg message handlers void CManageTKDlg::OnOK() { UpdateData(TRUE); CNewTKWDlg dlg(_T("打开"), _T("上华图库组文件 (*.TKW) |*.TKW|上华图库文件 (*.TK) |*.tk||")); if(dlg.DoModal()!=IDOK) return; if(!FindFile(dlg.GetPathName())) { AfxMessageBox(_T("不存在此文件!请换一文件。")); return; } m_csTK = _T(""); m_csTKW = _T(""); m_csText = _T(""); if(dlg.GetFileExt() == _T("tk") || dlg.GetFileExt() == _T("TK")){ m_csTK = dlg.GetPathName(); if(dlg.m_iTKType == 0) m_bIsJpgShow = TRUE; else m_bIsJpgShow = FALSE; ReadTK(m_csTK); } else { m_csTKW = dlg.GetPathName(); XStringList lstFiles; CTkwFile tkw(m_csTKW); m_bIsJpgShow = tkw.m_bIsJpg; tkw.GetTKList(lstFiles); for(int i=0;iMoveFirst(); !pTable->IsEOF(); pTable->MoveNext()) { GET_FIELD(pTable, _T("Drawing"), xsDrawing); if(!!xsDrawing) m_lstTK.Append(tstrnew(xsDrawing)); } XString xsDwb(256), xsDwb3d(256), xsDwb2d(256), xsSlb(256), xsJpb(256); if(m_bIsJpgShow){ xsDwb3d << GetPathNameByAllName(csTK) << GetFileNameByAllName(csTK) << _T("_3d.DWB"); xsDwb2d << GetPathNameByAllName(csTK) << GetFileNameByAllName(csTK) << _T("_2d.DWB"); } else xsDwb << GetPathNameByAllName(csTK) << GetFileNameByAllName(csTK) << _T(".DWB"); xsSlb << GetPathNameByAllName(csTK) << GetFileNameByAllName(csTK) << _T(".SLB"); xsJpb << GetPathNameByAllName(csTK) << GetFileNameByAllName(csTK) << _T(".JPB"); m_csSlb = (const TCHAR*)xsSlb; m_csDwb = (const TCHAR*)xsDwb; m_csJpb = (const TCHAR*)xsJpb; m_csDwb2d = (const TCHAR*)xsDwb2d; m_csDwb3d = (const TCHAR*)xsDwb3d; if(!m_bIsJpgShow){ XDrawingLib xDwb(m_csDwb); XSlideLib xSlb(m_csSlb); xDwb.GetAll(m_lstDwb); xSlb.GetAll(m_lstSlb); } else{ XDrawingLib xDwb2d(m_csDwb2d); XDrawingLib xDwb3d(m_csDwb3d); XJpegLib xJpb(m_csJpb); xJpb.GetAll(m_lstJpb); xDwb2d.GetAll(m_lstDwb2d); xDwb3d.GetAll(m_lstDwb3d); } int len = m_lstTK.Length(); if(!m_bIsJpgShow){ for(int n=0;nMoveFirst(); !pTable->IsEOF(); pTable->MoveNext()) { GET_FIELD(pTable, _T("Drawing"), xsDrawing); if(!!xsDrawing) m_lstTK.Append(tstrnew(xsDrawing)); } XString xsDwb3d(256), xsDwb2d(256), xsJpb(256); xsDwb3d << GetPathNameByAllName(csTK) << GetFileNameByAllName(csTK) << _T("_3d.DWB"); xsDwb2d << GetPathNameByAllName(csTK) << GetFileNameByAllName(csTK) << _T("_2d.DWB"); xsJpb << GetPathNameByAllName(csTK) << GetFileNameByAllName(csTK) << _T(".JPB"); m_csJpb = (const TCHAR*)xsJpb; m_csDwb2d = (const TCHAR*)xsDwb2d; m_csDwb3d = (const TCHAR*)xsDwb3d; XDrawingLib xDwb2d(m_csDwb2d); XDrawingLib xDwb3d(m_csDwb3d); XJpegLib xJpb(m_csJpb); xJpb.GetAll(m_lstJpb); xDwb2d.GetAll(m_lstDwb2d); xDwb3d.GetAll(m_lstDwb3d); for(int f=0;fMoveFirst(); !pTable->IsEOF(); pTable->MoveNext()) { GET_FIELD(pTable, _T("Drawing"), xsDrawing); if(!!xsDrawing) m_lstTK.Append(tstrnew(xsDrawing)); } XString xsDwb(256), xsSlb(256); xsDwb << GetPathNameByAllName(csTK) << GetFileNameByAllName(csTK) << _T(".DWB"); xsSlb << GetPathNameByAllName(csTK) << GetFileNameByAllName(csTK) << _T(".SLB"); m_csSlb = (const TCHAR*)xsSlb; m_csDwb = (const TCHAR*)xsDwb; XDrawingLib xDwb(m_csDwb); XSlideLib xSlb(m_csSlb); xDwb.GetAll(m_lstDwb); xSlb.GetAll(m_lstSlb); for(int n=0;n