现在我们打开易语言安装目录下,有一个SDK目录,打开它找到子目录 cpp工程
里面有一个htmlview的例子,首先我们用我们第1卷的代码和 工程对比一下,
我们可以发现,vc自己生成的cpp中,我们主要用来写一些支持库的信息,
创建窗口的信息,我们并没有看到,
然后我们继续参考 sdk目录下面的 官方文档,
1、易语言支持库实际上是一个DLL动态连接库,此库中必须输出一个名为 GetNewInf 的函数,原型见下:
#define FUNCNAME_GET_LIB_INFO "GetNewInf" // 取本支持库的PLIB_INFO指针的输出函数名称
typedef PLIB_INFO (WINAPI *PFN_GET_LIB_INFO) (); // GetNewInf的函数原型
其实,支持库就是一个dll,这里他主要公开的函数是这个 GetNewInf ;
好了,我们到 htmlview里面看一下涛哥是怎么写的。
PLIB_INFO WINAPI GetNewInf ()
{
return &s_LibInfo;
}
好了,涛哥是这么写的。
我们加到我们的程序中,然后编译
D:\vc\MyProjects\PropertyGrid\PropertyGrid.cpp(66) : error C2143: syntax error : missing ';' before '__stdcall'
D:\vc\MyProjects\PropertyGrid\PropertyGrid.cpp(66) : error C2501: 'PLIB_INFO' : missing storage-class or type specifiers
D:\vc\MyProjects\PropertyGrid\PropertyGrid.cpp(68) : error C2065: 's_LibInfo' : undeclared identifier
看到这里,我们知道,肯定是缺少啥头文件,我们在原版的函数GetNewInf 转到定义看看是在哪个头文件
然后发现是在 lib2.h 这个头文件,我们把这个文件复制到自己的工程目录,然后在stdafx加上这个头文件
#include "lib2.h"
好了,我们现在编译,还有一个错误
D:\vc\MyProjects\PropertyGrid\PropertyGrid.cpp(68) : error C2065: 's_LibInfo' : undeclared identifier
我们在原版里面,找到他是如何定义的 然后复制到我们的程序中,编译,然后发现 27个错误。哈哈
我们在后面慢慢来解决这个问题!
http://download.csdn.net/detail/u012607841/6830901