进程内组件编写需要手动添加的函数

原创 2015年11月18日 13:32:32

进程内组件编写需要手动添加的函数:组件注册函数、组件注销函数、类厂对象创建函数、组件生存与否函数

extern "C" HRESULT __stdcall DllGetClassObject(const CLSID& clsid, const IID& iid, void **ppv)
{
if (clsid == CLSID_Dictionary ) {

CDictionaryFactory *pFactory = new CDictionaryFactory;

if (pFactory == NULL) {
return E_OUTOFMEMORY ;
}

HRESULT result = pFactory->QueryInterface(iid, ppv);


return result;
} else {
return CLASS_E_CLASSNOTAVAILABLE;
}
}


extern "C" HRESULT __stdcall DllCanUnloadNow(void)
{
if ((g_DictionaryNumber == 0) && (g_LockNumber == 0))
return S_OK;
else
return S_FALSE;
}


//
// Server registration
//
extern "C" HRESULT __stdcall DllRegisterServer()
{
char szModule[1024];
DWORD dwResult = ::GetModuleFileName((HMODULE)g_hModule, szModule, 1024);
if (dwResult == 0)
return SELFREG_E_CLASS;
return RegisterServer(CLSID_Dictionary,
                     szModule, 
 "Dictionary.Object",
 "Dictionary Component",
 NULL);
}




//
// Server unregistration
//
extern "C" HRESULT __stdcall DllUnregisterServer()
{
return UnregisterServer(CLSID_Dictionary,
                       "Dictionary.Object",NULL);
}

C#调用手动编写的COM组件(非ATL向导生成,参考上一篇手把手写COM组件)

C#调用手动编写的COM组件 (非ATL向导生成,参考上一篇手把手写COM组件) 手动创建一个非ATL向导生成的COM组件,添加的接口定义文件MyIDL.idl代码如下:(修改自“COM原理与应用...
  • blacet
  • blacet
  • 2016年03月18日 16:46
  • 764

VS2013如何在MFC工程中定义自己的消息映射函数

VS2013环境下,在创建的MFC工程ThreadSendMSG中自定义消息映射函数
  • sharponeyk
  • sharponeyk
  • 2016年04月24日 21:45
  • 1382

QML概念及框架--在组件中添加函数和信号

1. 添加函数    QML组件中可以定义JavaScript代码的函数,这些函数可以在内部调用,也可以被其他对象调用。     function ([[,...]]) {} 与信号不同,函数的参数...
  • u012419303
  • u012419303
  • 2015年05月21日 11:33
  • 1085

提升进程权限的几个常用函数

文章一: 在枚举/结束系统进程或操作系统服务时,会出现自己权限不足而失败的情况,这时就需要提升自己进程到系统权限,其实提升权限的代码很简单的,看到过的最经典的应该是《WINDOWS核心编程》第四章中操...
  • qq_22642239
  • qq_22642239
  • 2017年04月10日 19:47
  • 279

React 中被忽略的函数组件(Functional Components)

React中有两种组件:函数组件(Functional Components) 和类组件(Class Components)。据我观察,大部分同学都习惯于用类组件,而很少会主动写函数组件,包括我自己也...
  • xuchaobei123
  • xuchaobei123
  • 2017年07月16日 08:23
  • 1457

手动编写一个servlet部署在tomcat上

先编写一个简单的HelloWorld.javapackage com.amarsoft.exercise;import java.io.IOException; import java.io.Prin...
  • lihaomian
  • lihaomian
  • 2017年04月14日 23:04
  • 148

Vue中你不知道但却很实用的黑科技

作者:Aresn 链接:https://zhuanlan.zhihu.com/p/24173419 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 最...
  • qq_24122593
  • qq_24122593
  • 2016年12月06日 10:27
  • 7186

C#编写COM组件

C#编写COM组件  软件:Microsoft VisualStudio 2010 1、新建一个类库项目 2、将Class1.cs改为我们想要的名字(例如:MyClass.cs)...
  • kingmax54212008
  • kingmax54212008
  • 2017年06月22日 14:44
  • 1974

React创建组件的三种方式及其区别

React创建组件的三种方式及其区别 React推出后,出于不同的原因先后出现三种定义react组件的方式,殊途同归;具体的三种方式: 函数式定义的无状态组件es5原生方式Re...
  • liangklfang
  • liangklfang
  • 2016年11月26日 16:58
  • 1006

浅谈SpringMVC之组件的配置和流程的实现

上次介绍了关于SpringMVC的架构和工作流程,本篇基于上一篇来介绍关于SpringMVC的基本使用和配置。 不清楚的直接看: http://blog.csdn.net/james_shu/ar...
  • James_shu
  • James_shu
  • 2017年01月19日 23:37
  • 478
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:进程内组件编写需要手动添加的函数
举报原因:
原因补充:

(最多只允许输入30个字)