Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

72 lines
2.1 KiB

#ifndef _INC_COMMSIMP_H
#define _INC_COMMSIMP_H
// {1198A2C0-0940-11d1-838F-00C04FBD7C09}
DEFINE_GUID(CLSID_CCommunicatorImport, 0x1198a2c0, 0x940, 0x11d1, 0x83, 0x8f, 0x0, 0xc0, 0x4f, 0xbd, 0x7c, 0x9);
#define SNM_FILE 1
#define SNM_DRAFT 2
#define hrExceptionalCase -1
#define hrOSInfoNotFound 500
#define hrWin32platform 501
class CCommunicatorEnumFOLDERS : public IEnumFOLDERS
{
private:
ULONG m_cRef;
EUDORANODE* m_plist;
EUDORANODE* m_pnext;
public:
CCommunicatorEnumFOLDERS(EUDORANODE *plist);
~CCommunicatorEnumFOLDERS(void);
STDMETHODIMP QueryInterface(REFIID, LPVOID *);
STDMETHODIMP_(ULONG) AddRef(void);
STDMETHODIMP_(ULONG) Release(void);
STDMETHODIMP Next(IMPORTFOLDER *pfldr);
STDMETHODIMP Reset(void);
};
class CCommunicatorImport : public IMailImport
{
private:
ULONG m_cRef;
EUDORANODE *m_plist;
char m_szUser[MAX_PATH];
BOOL m_bDraft;
public:
CCommunicatorImport(void);
~CCommunicatorImport(void);
STDMETHODIMP QueryInterface(REFIID, LPVOID *);
STDMETHODIMP_(ULONG) AddRef(void);
STDMETHODIMP_(ULONG) Release(void);
STDMETHODIMP InitializeImport(HWND hwnd);
STDMETHODIMP GetDirectory(char *szDir, UINT cch);
STDMETHODIMP SetDirectory(char *szDir);
STDMETHODIMP EnumerateFolders(DWORD_PTR dwCookie, IEnumFOLDERS **ppEnum);
STDMETHODIMP ImportFolder(DWORD_PTR dwCookie, IFolderImport *pImport);
// class member functions
HRESULT ProcessBlocks(BYTE* pSnm, ULONG cbSnm,
BYTE* pMsg, ULONG cbMsg,
int nLayer, ULONG Offset,
IFolderImport *pImport);
HRESULT ProcessMessages(BYTE* pSnm, ULONG cbSnm,
BYTE* pMsg, ULONG cbMsg,
ULONG NewOffset,
IFolderImport* pImport);
ULONG GetPrimaryOffset(BYTE* pSnm, ULONG cbSnm);
ULONG GetOffset(BYTE* pSnm, ULONG cbSnm, ULONG Offset, int nElement);
};
#endif // _INC_COMMSIMP_H