百度好多都没有找到window下使用xpcom开发的完整例子,自己写了一个
首先,创建简单计算器组件calculator,新建接口文件ICalculator.h,类定义头文件Calculator.h和实现文件Calculator.cpp,
需要以下配置设置:
1、工程属性页——连接器——输入 ——附加依赖项 ,添加链接库 embedstring.lib nspr4.lib plc4.lib plds4.lib xpcomglue.lib
2、工程属性页——C/C++——预处理器 ——预处理器定义,添加宏 XPCOM_GLUE
MOZILLA_STRICT_API
3、工具——选项——VC++目录——包含文件,设置sdk路径gecko-sdk,gecko-sdk\nspr\include,gecko-sdk\xpcom\include,gecko-sdk\embedstring\include,\gecko-sdk\string\include
4、工具——选项——VC++目录——库文件,设置sdk库路径,gecko-sdk\xpcom\bin,gecko-sdk\nspr\bin,gecko-sdk\embedstring\bin
接口文件如下ICalculator.h:
#ifndef _CALCULATOR_H
#define _CALCULATOR_H
#include <nsCOMPtr.h> //必须包含
#include <nsISupports.h> //必须包含
// {8D9FD7F4-58F3-4b79-8A2B-B799677862B5}
#define CALCULATOR_IID \
{ 0x8d9fd7f4, 0x58f3, 0x4b79, { 0x8a, 0x2b, 0xb7, 0x99, 0x67, 0x78, 0x62, 0xb5 } }
#define CALCULATOR_CLASSNAME "A Simple XPCOM Sample"
#define CALCULATOR_CONTRACTID "@mydomain.com/XPCOMSample/Calculate;1"