#if !defined(AFX_DLG_SEND_H__60D7C1FD_03E9_4F4C_9077_AF29BADC6F94__INCLUDED_) #define AFX_DLG_SEND_H__60D7C1FD_03E9_4F4C_9077_AF29BADC6F94__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 // DLG_Send.h : header file // ///////////////////////////////////////////////////////////////////////////// // DLG_Send dialog #include ".\LuButton\LuButton.h" #include "..\public\reportctrl\ReportCtrl.h" #include "UserDropTarget.h" #include "label.h" #include "ImApi\ImApi.h" #include "..\public\StringSort\StringSort.h" #define SEND_USER_ADD WM_USER+220 #define SEND_USER_MODIFY WM_USER+221 #define SEND_USER_DEL WM_USER+222 #define SEND_USER_CLEAR WM_USER+223 #define SEND_USER_INPORT WM_USER+224 #define SEND_USER_EXPORT WM_USER+225 #define SEND_USER_STATUS WM_USER+226 #define SEND_USER_INPORT_LT WM_USER+227 #define SEND_USER_INPORT_MASSDKDGWL_FP WM_USER+230 #define SEND_USER_INPORT_MASSDKDGWL_SP WM_USER+231 #define SEND_USER_INPORT_MASSDKDGWL_KF WM_USER+232 #define SEND_USER_INPORT_MASSDKDGWL_ZC WM_USER+233 #define SEND_USER_PASTE WM_USER+240 typedef struct _SaveItemStatus { long lSendID; TCHAR szStatus[4]; long lItemID; long lStatus; //����״̬,0-�ύ�ɹ�,1-�ύʧ��,2-�û�����,3-��ҵ����,4-��ҵ�ѹ��� long lKF; TCHAR szSendNum[32];//���ͺ��� TCHAR szName[32]; //Ŀ������ TCHAR szMobile[32]; //Ŀ����� TCHAR szMsg[1020]; //�������� }SaveItemStatus; typedef CTypedPtrList<CPtrList, SaveItemStatus*> CSaveItemStatus; class CMainFrame; class CProcessSocket; class DLG_Send : public CDialog { public: CMainFrame * m_pMainFrame; protected: CImageList m_Image; //ͼ���б� CRect m_OldRect; //ԭDlg��Rect CProcessSocket * m_pSocket; CAdoRecordSet m_AdoRS; CAdoRecordSet m_AdoRS2; CAdoRecordSet m_AdoRS3; CAdoRecordSet m_AdoRS4; CAdoRecordSet m_AdoRS5; CAdoRecordSet m_AdoRS6; CUserDropTarget m_UserDrop; BOOL m_bInit; //�б��Ƿ���ʵʼ�� BOOL m_bModify; //�Ƿ����Ĺ� long m_lBoxID; //BoxID long m_lBoxType; //�б�����0,����,1,�ѷ� //����Ϊ����ʱ������ BOOL m_bSend; //�Ƿ����ڷ��� SYSTEMTIME m_tTimer; //��ʱʱ�� TCHAR m_szMsg[1024]; //����ԭ��Ϣ TCHAR m_szMsgEndFilt[1024];//���һ��֪ͨ����Ա����Ϣ TCHAR m_szSendMsg[1024]; //��ǰ���͵����� long m_lSendIndex; //�����б����Index long m_lSendOK; //���ͳɹ����� BOOL m_bShowFiltWarning;//�Ƿ�������ʾ���˾��� BOOL m_bShowFiltFirst; //�Ƿ��һ����ʾ���˾��� BOOL m_bFilt; //�Ƿ���Ҫ��� BOOL m_bFiltOver; //�Ƿ���Ҫ������� //����Ϊ�ظ���������֪ͨ BOOL m_bShowReMobile; //�Ƿ���ʾ�ظ�����֪ͨ long m_lReMobileType; //������ظ����룬��������,0-������1-������һ�� //����Ϊ����������֪ͨ BOOL m_bBackReMobile; //�Ƿ���ʾ�ظ�����֪ͨ long m_lBackReMobileType; //������ظ����룬��������,0-������1-������һ�� //����Ϊ��������ף��ר�� BOOL m_bSendSR; //���㷢��ʱ�� DWORD m_dwSendStartTime; //ʹ���̱߳��淢��״̬ CSaveItemStatus m_SaveItemStatus; //��¼�������� DWORD m_dwBackCount; //���������� DWORD m_dwNoSupCount; //��֧�ֺ������� DWORD m_dwNoMsgCount; //û�������� BOOL m_bSaveList; long m_lPage; //��¼mas���δ�������mas�������� long m_lMasAllSendCount; long m_lInterval; //���ڷ��ͼ�� BOOL m_bNoSupperWord; //���η��������Ƿ��з�֧���ַ� CString m_strFiltWord; //�����صĹؼ��� CStringSort m_strSort; //���� BOOL m_bOneToOne; int m_lSendRand; //���͵������ CStringArray * m_pMobileMsg; //�ֻ�����ķֶ� REQ_SendData3 * m_pSendData; //�Ŷ� public: CAdoConnection m_HDadoConnection; CAdoRecordSet m_HDAdoRS; #ifdef SUPPER_IM_MAS //Mas BOOL m_Mas_Init; // mas�Ƿ��ѳ�ʼ�� HINSTANCE m_Mas_Lib; MAS_initWithDB m_Mas_initWithDB; MAS_release m_Mas_release; MAS_sendSMAdvTime m_Mas_sendSMAdvTime; MAS_receiveSM m_Mas_receiveSM; MAS_receiveRPT m_Mas_receiveRPT; BOOL m_Mas_MasEnd; BOOL m_Mas_MobsetEnd; long m_Mas_SendOK; #endif // Construction public: void CloseAutoSave(void); BOOL ProcessSocket(Socket_Head_Add *pHead, BYTE *pFrame); void OnSendTask2(); void SEND_USER_INPORT_MasSDK_DGWL(long lType); BOOL Mas_OK(); BOOL IsLocakBack(CString strMobile); BOOL bNoSupperWord(TCHAR *pMsg,CString & strWord); static UINT Mas_RecvT(void *pParam); BOOL Mas_MobileIsSend(CString strMobile); static UINT Mas_SendT(void *pParam); BOOL Mas_Init(); BOOL Mas_Enable(); CString GetOtherSendRetMsg(); BOOL isSendingSms(); static UINT AutoSaveItem(void *pParam); static UINT AutoSaveLog(void *pParam); void SetListSR( BOOL bSendSR); BOOL isBack( const TCHAR * pMobile ); void RefreshListCount(); void RefreshStatusAndLog(); void List_SetMsg( TCHAR * pMsg ); BOOL bFilt( const TCHAR * pMsg,long lCount2=-1 ); BOOL ProcessSocket(Socket_Head *pHead); void SendNextSms(); BOOL IsSend(); BOOL List_AddUser( long lCount , Send_User * pUser ); void EnableModifyWindow( BOOL bModify ); BOOL List_ReSend( long lBoxID ); void AddLoveToMsg(TCHAR *pLove); long GetBoxID(); void AddUser( Send_User user,long lItem = -1 ); BOOL List_Read( long lBoxID ); Send_User GetUser( long lItem,BOOL bDelay=false ); BOOL List_Save(BOOL bTJ=false); void ShowRMenu(); long GetCurrentSelected(); void SetMainFrame(CMainFrame *pFrame); BOOL List_New(); BOOL CloseList(); void RefreshTJ(); void InitItem(); void On_User_Inport_Group_Sms(); DLG_Send(CWnd* pParent = NULL); // standard constructor // Dialog Data //{{AFX_DATA(DLG_Send) enum { IDD = IDD_SEND }; CButton m_B_Task; CComboBox m_L_lInterval; CButton m_B_FD; LuButton m_B_New2; CButton m_B_LongSms; CStatic m_S_PCount2; CButton m_B_SaveSendLog; CStatic m_S_CM2; CLabel m_S_CM; CButton m_B_GetMsg; CButton m_B_ReMobile; LuButton m_B_DY; LuButton m_B_New; CButton m_B_Add; CEdit m_E_Num; CDateTimeCtrl m_D_Time; CDateTimeCtrl m_D_Date; LuButton m_B_YL; CStatic m_S_WCount; LuButton m_B_Status; LuButton m_B_Start; LuButton m_B_Save; CButton m_S_S1; CButton m_B_Report; CStatic m_S_PCount; LuButton m_B_Null; CButton m_S_MsgList; CEdit m_E_Msg; CButton m_S_ListCount; CListCtrl m_wndList; LuButton m_B_Memo; LuButton m_B_NickName; LuButton m_B_Name; LuButton m_B_Flash; CButton m_B_HandFree; CButton m_B_DS; //}}AFX_DATA // Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(DLG_Send) public: virtual BOOL PreTranslateMessage(MSG* pMsg); protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support //}}AFX_VIRTUAL // Implementation protected: virtual LRESULT OnDrop(WPARAM wParam, LPARAM lParm); // Generated message map functions //{{AFX_MSG(DLG_Send) virtual BOOL OnInitDialog(); afx_msg void OnSize(UINT nType, int cx, int cy); afx_msg void OnClose(); afx_msg void OnChangeSendMsg(); afx_msg void OnSendDs(); afx_msg void OnSendSave(); afx_msg void OnRclickSendList(NMHDR* pNMHDR, LRESULT* pResult); afx_msg void OnSendNumadd(); afx_msg void OnSendNumPaste(); afx_msg void OnDblclkSendList(NMHDR* pNMHDR, LRESULT* pResult); afx_msg void OnDatetimechangeSendDsD(NMHDR* pNMHDR, LRESULT* pResult); afx_msg void OnDatetimechangeSendDsT(NMHDR* pNMHDR, LRESULT* pResult); afx_msg void OnSendNew(); afx_msg void OnSendIname(); afx_msg void OnSendInicename(); afx_msg void OnSendInmemo(); afx_msg void OnSendIfalsh(); afx_msg void OnSendYl(); afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); afx_msg void OnSendStart(); afx_msg void OnTimer(UINT nIDEvent); afx_msg void OnKeydownSendList(NMHDR* pNMHDR, LRESULT* pResult); afx_msg void OnSendDy(); afx_msg void OnSendGetmsg(); afx_msg void OnDestroy(); afx_msg void OnSendLongsms(); afx_msg void OnSendNew2(); afx_msg void OnSendFd(); afx_msg void OnSendTask(); //}}AFX_MSG afx_msg void On_User_Add(); afx_msg void On_User_Modify(); afx_msg void On_User_Del(); afx_msg void On_User_Clear(); afx_msg void On_User_Inport(); afx_msg void On_User_Export(); afx_msg void On_User_Status(); afx_msg void On_User_Inport_LT(); afx_msg void On_User_Inport_MasSDK_DGWL_FP(); afx_msg void On_User_Inport_MasSDK_DGWL_SP(); afx_msg void On_User_Inport_MasSDK_DGWL_KF(); afx_msg void On_User_Inport_MasSDK_DGWL_ZC(); DECLARE_MESSAGE_MAP() virtual void OnOK(); virtual void OnCancel(); public: // afx_msg void OnKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags); // afx_msg void OnHotKey(UINT nHotKeyId, UINT nKey1, UINT nKey2); afx_msg void OnClickedSendRemobile(); }; //{{AFX_INSERT_LOCATION}} // Microsoft Visual C++ will insert additional declarations immediately before the previous line. #endif // !defined(AFX_DLG_SEND_H__60D7C1FD_03E9_4F4C_9077_AF29BADC6F94__INCLUDED_)