Plugin2.cpp
上传用户:easylife05
上传日期:2007-02-14
资源大小:393k
文件大小:1k
源码类别:

PlugIns编程

开发平台:

Visual C++

  1. // Plugin2.cpp : DLL 导出的实现。
  2. #include "stdafx.h"
  3. #include "resource.h"
  4. #include "Plugin2.h"
  5. //---------------------------------
  6. HINSTANCE global_hInstance;   //全局运行程序实例
  7. class CPlugin2Module : public CAtlDllModuleT< CPlugin2Module >
  8. {
  9. public :
  10. DECLARE_LIBID(LIBID_Plugin2Lib)
  11. DECLARE_REGISTRY_APPID_RESOURCEID(IDR_PLUGIN2, "{B48ABB6D-A0EF-4888-836A-AAB69B1F01D6}")
  12. };
  13. CPlugin2Module _AtlModule;
  14. // DLL 入口点
  15. extern "C" BOOL WINAPI DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID lpReserved)
  16. {
  17. global_hInstance=hInstance;
  18.     return _AtlModule.DllMain(dwReason, lpReserved); 
  19. }
  20. // 用于确定 DLL 是否可由 OLE 卸载
  21. STDAPI DllCanUnloadNow(void)
  22. {
  23.     return _AtlModule.DllCanUnloadNow();
  24. }
  25. // 返回一个类工厂以创建所请求类型的对象
  26. STDAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID* ppv)
  27. {
  28.     return _AtlModule.DllGetClassObject(rclsid, riid, ppv);
  29. }
  30. // DllRegisterServer - 将项添加到系统注册表
  31. STDAPI DllRegisterServer(void)
  32. {
  33.     // 注册对象、类型库和类型库中的所有接口
  34.     HRESULT hr = _AtlModule.DllRegisterServer();
  35. return hr;
  36. }
  37. // DllUnregisterServer - 将项从系统注册表中移除
  38. STDAPI DllUnregisterServer(void)
  39. {
  40. HRESULT hr = _AtlModule.DllUnregisterServer();
  41. return hr;
  42. }