#if !defined(AFX_NERODLG1_H__E6EFFD01_4425_11CF_BB70_00E04C394613__INCLUDED_) #define AFX_NERODLG1_H__E6EFFD01_4425_11CF_BB70_00E04C394613__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 // NeroDlg1.h : header file // #include "NeroBurn.h" ///////////////////////////////////////////////////////////////////////////// // CNeroDlg dialog class CNeroDlg : public CDialog { CString m_realpath;//没有精修片时的替代片 int m_nphotos; DWORD m_nspase; int m_nphotos1; DWORD m_nspase1; int m_nphotos2; DWORD m_nspase2; int m_nphotos3; DWORD m_nspase3; int m_nphotos4; DWORD m_nspase4; int m_nphotos5; DWORD m_nspase5; int m_nphotos6; DWORD m_nspase6; DWORD m_nspase1temp; DWORD m_nspase2temp; DWORD m_nspase3temp; DWORD m_nspase4temp; DWORD m_nspase5temp; DWORD m_nspase6temp; CStringArray m_photoarray1; // 精修片(若没有精修,则是已选的原片或初修)-相片从不压缩的; CStringArray m_photoarray2; // 初修片(未用); CStringArray m_photoarray3; // 原片(未用); CStringArray m_photoarray4; // 原片; CStringArray m_photoarray5; // 初修片; CStringArray m_photoarray6; CStringArray m_photoarray7; CStringArray m_photoarray8; // 用于非订单路径; // 选片选好的相片编号; CStringArray m_noarray; public: CNeroDlg(CWnd* pParent = NULL); // standard constructor CString m_strOrderNum; // 订单号; CString m_strCustomerInfo; // 顾客名称; BOOL m_bScale; // 是否压缩(是否裁小照片) enum { IDD = IDD_NEROWORKDLG }; CComboBox m_combo1; CProgressCtrl m_Progress; int m_bFromDir; int m_bDvd; #ifdef USE_KERNEL_DLL INT m_nImgType; // 与m_checkphoto1配合使用; #endif BOOL m_checkphoto1; // 精修; BOOL m_checkphoto2; BOOL m_checkphoto3; BOOL m_checkphoto4; // 全部原片; BOOL m_checkphoto5; // 全部初修; BOOL m_checkphoto6; // 全部设计; public: virtual BOOL PreTranslateMessage(MSG* pMsg); protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support public: BOOL CheckDiskSpase(); void GenSPhoto(CString dir, CStringArray &array, DWORD &nNeedSpase, BOOL bCheckNo); void GenSPhoto(CString dir, CString sType, CStringArray &array, CStringArray &dirarray); void GetNo(CString str, CStringArray &array); void EnableCtrls(); int StyleID; CString wantBurnFilesPath[40]; int wantBurnFileNums; CNeroBurn m_Burn; static NeroUserDlgInOut NERO_CALLBACK_ATTR UserDialog(void *pUserData, NeroUserDlgInOut type,void* data); static bool NERO_CALLBACK_ATTR IdleCallback(void *pUserData); static void NERO_CALLBACK_ATTR SetPhaseCallback(void* pUserData,const char* text); static void NERO_CALLBACK_ATTR AddLogLine(void *pUserData,NERO_TEXT_TYPE type,const char* text); static BOOL NERO_CALLBACK_ATTR AbortedCallback(void* pUserData); static BOOL NERO_CALLBACK_ATTR ProgressCallback(void *pUserData,DWORD dwProgressInPercent); protected: virtual BOOL OnInitDialog(); virtual void OnOK(); virtual void OnCancel(); afx_msg void OnRadio3(); afx_msg void OnRadio4(); afx_msg void OnBUTchoosedir(); afx_msg void OnCheck1(); afx_msg void OnCheck2(); afx_msg void OnCheck3(); afx_msg void OnCheck4(); afx_msg void OnCheck5(); afx_msg void OnCheck6(); afx_msg void OnCheck7(); afx_msg void OnCloseupCombo1(); afx_msg void OnRadio1(); afx_msg void OnRadio2(); afx_msg void OnDestroy(); DECLARE_MESSAGE_MAP() private: bool NowDoingBurn; bool RightNowToBurn; void DoBurnOrNot(); // Jeff modify code 2014.09.03 public: afx_msg void OnBnClickedExporttou(); CString m_strUFolder; // U盘目录; HANDLE m_hThread; // 线程句柄; HANDLE m_hCtrl; // 线程事件; BOOL m_bThreadRuning; int StartThread(); int EndofThread(); static DWORD WINAPI ExportImageThread(LPVOID lpParam); static void SaveImageToFile(IN Image *img, IN CString path); static int GetEncoderClsid(IN const WCHAR* format,IN OUT CLSID* pClsid); static void RectFitDes_01(IN const int &nWidth, IN const int &nHeight, IN OUT CRect &rc); static void ToCompressImage(IN const TCHAR *pImageSource, IN const TCHAR *pImageDest,IN const int &nXPiexel,IN const int &nYPiexel); }; #endif