资源描述:
《图文手把手教你一步步用VC++2010编写通达信缠论插件(1-DLL设计入门).pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、图文手把手教你一步步用VC++2010编写通达信缠论插件(1-DLL设计入门)按照图文提示,一步步往下走,按照说明,创建VC++2010工程,把文中的代码拷贝到文中说明的位置,编译运行,绝对通过!本篇免收下载券。后面的要收了,但是,收也收很少,顶多收你一个下载券,我心不贪,请大家支持点儿。本来都是玩儿的,但是,我下载别人的资料,也要下载券啊!同志们,别骂我。深谷老榆制作,2016.4.24第一步、从“文件”菜单中,选择“新建”,然后选择“项目…”。这时候弹出“新建项目”窗口,从“项目类型”窗格中选择“Win32项目”,并填写工程名称,自己命名,我这里是ChanLunTdx。点击“
2、确定”按钮,出现下面“Win32应用程序向导”窗口:点击“下一步”按钮,出现“应用程序设置”窗口。“应用程序类型”选择“DLL”,然后单击“完成”按钮。程序框架基本搭成。第二步、双击“解决方案资源管理器”中“源文件”中的dllmain.cpp文件,按照下图所示删掉无用代码:则dllmain.cpp文件内容如下所示://dllmain.cpp:定义DLL应用程序的入口点。#include"stdafx.h"BOOLAPIENTRYDllMain(HMODULEhModule,DWORDul_reason_for_call,LPVOIDlpReserved){returnTRUE;}
3、第三步、鼠标右键单击工程名,出现一个弹出窗口,选择“添加(D)”下“新建项(W)...”:点击后出现“添加新项”窗口,在其中选择“头文件(.h)”,下面文件名选择“ChanLunTdx”,单击下面“添加”按钮:把下面代码拷贝进去://ChanLunTdx.h:定义DLL应用程序的导出函数。//#ifndef__CHANLUNTDX_H__#define__CHANLUNTDX_H__//#include"PluginTCalcFunc.h"//======================================#pragmapack(push,1)//函数(数据个数,输出
4、,输入a,输入b,输入c)typedefvoid(*pPluginFUNC)(int,float*,float*,float*,float*);//PluginTCalcFuncInfo结构用来存放用户自己的函数pCallFunc和函数唯一标记nFuncMark;//pCallFunc是typedefvoid(*pPluginFUNC)(intDataLen,float*pfOUT,float*pfINa,float*pfINb,float*pfINc)类型指针;//函数参数分别是(数据个数,输出,输入a,输入b,输入c),参数的计算是基于长度为DataLen的float类型数组
5、。typedefstructtagPluginTCalcFuncInfo{unsignedshortnFuncMark;//函数编号pPluginFUNCpCallFunc;//函数地址}PluginTCalcFuncInfo;//RegisterTdxFunc函数为注册函数,用户的函数全部都放入PluginTCalcFuncInfo结构的全局数组g_CalcFuncSets中。typedefBOOL(*pRegisterPluginFUNC)(PluginTCalcFuncInfo**);#pragmapack(pop)//===========================
6、============#ifdef__cplusplusextern"C"{#endif//__cplusplus__declspec(dllexport)BOOLRegisterTdxFunc(PluginTCalcFuncInfo**pFun);#ifdef__cplusplus}#endif//__cplusplus#endif//__TCALC_FUNC_SETS第四步、双击“解决方案资源管理器”中“源文件”中的ChanLunTdx.cpp文件,把下面代码全部拷贝进去://ChanLunTdx.cpp:定义DLL应用程序的导出函数。//#include"stdafx.h
7、"#include"ChanLunTdx.h"//生成的dll及相关依赖dll请拷贝到通达信安装目录的T0002/dlls/下面,再在公式管理器进行绑定//函数:EMA(X,N)//说明:指数平滑移动平均卖一价求指数平滑移动平均。//用法:EMA(X,N),求X的N日指数平滑移动平均。//算法:若Y=EMA(X,N)则Y=[2*X+(N-1)*Y']/(N+1),其中Y'表示上一周期Y值。//例如:EMA(CLOSE,30)表示求30日指数平滑均价//通达信中用的时候,第一个输入