SendFile.cpp
上传用户:zslianheng
上传日期:2013-04-03
资源大小:946k
文件大小:3k
源码类别:

Linux/Unix编程

开发平台:

Visual C++

  1. /***************************************************************************
  2.  *                                                                         *
  3.  *   This program is free software; you can redistribute it and/or modify  *
  4.  *   it under the terms of the GNU General Public License as published by  *
  5.  *   the Free Software Foundation; either version 2 of the License, or     *
  6.  *   (at your option) any later version.                                   *
  7.  *                                                                         *
  8.  *   copyright            : (C) 2002 by Zhang Yong                         *
  9.  *   email                : z-yong163@163.com                              *
  10.  ***************************************************************************/
  11. // SendFile.cpp : Defines the initialization routines for the DLL.
  12. //
  13. #include "stdafx.h"
  14. #include "SendFile.h"
  15. #include "SendFileDlg.h"
  16. #include "plugin.h"
  17. #include <string>
  18. using namespace std;
  19. #ifdef _DEBUG
  20. #define new DEBUG_NEW
  21. #undef THIS_FILE
  22. static char THIS_FILE[] = __FILE__;
  23. #endif
  24. //
  25. // Note!
  26. //
  27. // If this DLL is dynamically linked against the MFC
  28. // DLLs, any functions exported from this DLL which
  29. // call into MFC must have the AFX_MANAGE_STATE macro
  30. // added at the very beginning of the function.
  31. //
  32. // For example:
  33. //
  34. // extern "C" BOOL PASCAL EXPORT ExportedFunction()
  35. // {
  36. // AFX_MANAGE_STATE(AfxGetStaticModuleState());
  37. // // normal function body here
  38. // }
  39. //
  40. // It is very important that this macro appear in each
  41. // function, prior to any calls into MFC.  This means that
  42. // it must appear as the first statement within the 
  43. // function, even before any object variable declarations
  44. // as their constructors may generate calls into the MFC
  45. // DLL.
  46. //
  47. // Please see MFC Technical Notes 33 and 58 for additional
  48. // details.
  49. //
  50. #define ICQ_EXPORT extern "C" __declspec(dllexport)
  51. ICQ_EXPORT int getType()
  52. {
  53. return ICQ_PLUGIN_NET;
  54. }
  55. ICQ_EXPORT void *getNameIcon(string &name)
  56. {
  57. AFX_MANAGE_STATE(AfxGetStaticModuleState());
  58. CString str;
  59. str.LoadString(IDS_SENDFILE);
  60. name = str;
  61. return (void *) AfxGetApp()->LoadIcon(IDI_SENDFILE);
  62. }
  63. ICQ_EXPORT TcpSessionListener *createSession(TcpSessionBase *tcp)
  64. {
  65. AFX_MANAGE_STATE(AfxGetStaticModuleState());
  66. FileSession *session = new FileSession(tcp);
  67. CSendFileDlg *dlg = new CSendFileDlg(session);
  68. dlg->Create(IDD_SEND_FILE);
  69. session->setListener(dlg);
  70. return session;
  71. }
  72. /////////////////////////////////////////////////////////////////////////////
  73. // CSendFileApp
  74. BEGIN_MESSAGE_MAP(CSendFileApp, CWinApp)
  75. //{{AFX_MSG_MAP(CSendFileApp)
  76. // NOTE - the ClassWizard will add and remove mapping macros here.
  77. //    DO NOT EDIT what you see in these blocks of generated code!
  78. //}}AFX_MSG_MAP
  79. END_MESSAGE_MAP()
  80. /////////////////////////////////////////////////////////////////////////////
  81. // CSendFileApp construction
  82. CSendFileApp::CSendFileApp()
  83. {
  84. // TODO: add construction code here,
  85. // Place all significant initialization in InitInstance
  86. }
  87. /////////////////////////////////////////////////////////////////////////////
  88. // The one and only CSendFileApp object
  89. CSendFileApp theApp;
  90. /////////////////////////////////////////////////////////////////////////////
  91. // CSendFileApp initialization
  92. BOOL CSendFileApp::InitInstance()
  93. {
  94. return TRUE;
  95. }