易截截图软件、单文件、免安装、纯绿色、仅160KB

用C模拟COM实现 - VC/MFC / 基础类

刚才在一个贴子里看到有人建议用C来模拟COM实现,于是我尝试了下,
主要就是用C模拟C++虚表实现, 可能有些地方理解不对, 欢迎大家指正
C/C++ code:
#include <windows.h>
#include <tchar.h>
#include <crtdbg.h>

#ifndef __IID_DEFINED__
#define __IID_DEFINED__
typedef struct _IID
{
unsigned long x;
unsigned short s1;
unsigned short s2;
unsigned char c[8];
} IID;
typedef IID CLSID;
#endif // __IID_DEFINED__

const IID IID_IMath = {0xF4F2BDCD,0x3990,0x4279,{0x86,0xFE,0x08,0xB0,0x95,0x9B,0xAC,0x87}};
const IID IID_IMathTimes = {0x461E5585,0xD9FD,0x417A,{0x8D,0xCA,0xD7,0x0B,0xC9,0x85,0x51,0xF1}};
const CLSID CLSID_Math = {0x9AA80A7D,0xBA05,0x40C8,{0x94,0x28,0xEF,0xD6,0x58,0x3B,0xA8,0x2D}};


typedef HRESULT (WINAPI *QueryInterfaceProc)(VOID* pThis, REFIID iid, void ** ppvObject);
typedef ULONG (WINAPI *AddRefProc)(VOID* pThis);
typedef ULONG (WINAPI *ReleaseProc)(VOID* pThis);

typedef HRESULT (WINAPI *AddProc)(VOID* pThis, int a, int b, int* nRet);
typedef HRESULT (WINAPI *GetAddTimesProc)(VOID* pThis, int* nRet); //get call times for Add function

struct IUnkown
{
QueryInterfaceProc f_QueryInterface;
AddRefProc f_AddRef;
ReleaseProc f_Release;
};


struct IMath
{
//IUnkown
QueryInterfaceProc f_QueryInterface;
AddRefProc f_AddRef;
ReleaseProc f_Release;


相关问答:

linux环境下gethostbyname函数问题 - C/C++ / C语言

写了个测试程序如下
   
  struct hostent *hp; 
char AlarmDevIP[20];  
  int x2;

hp = gethostbyname("www.google.com");
if (hp)
{ ......

execl怎么调用java程序 - C/C++ / C语言

如题,C/C++中的execl怎么调用写好的java程序,
execl("/opt/java1.5/bin/java","MyClass",NULL);
这样的不行哦。

不会.

运行java程序
找工具查看一下那个程序的命令行

搜索下:jni ......

高分求!最好是C/C++ - C/C++ / C语言

分别用结构化方法和面向对象方法编程实现下面要求:
对Circle和Rectangle实现以下功能Center,Move,Rotate,Print.
自己先订以下,这是一个刚学习计算机的人问我的


学习,看看

继续顶哦

学习了。

go o ......

c静态编译另一个文件夹的库函数 - C/C++ / C语言

在根目录/lib中存放一个log.c,log.h,并用下面的语句:
gcc -c log.c
ar crv liblog.a log.o
编译出一个liblog.a静态库,然后在文件夹:/testfile中创建一个test.c和testc.c,test.c中引用了testc.c中定义的方法 ......

c# Winform 触摸屏程序 - .NET技术 / C#

公司开发一个触摸屏程序,我负责的一块,实现这样一个功能,当鼠标点击窗口中图片(一张图分成几部分)的其中一部分时,将这部分图片截取出来,弹出新的窗口,将截取出的图片显示出来。我使用Rectange类控制了返回, ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号