制作通达信MFC框架的DLL公式教程
制作通达信MFC框架的DLL公式教程
大家好,众所周知,通达信官方提供的dll公式范例是win32的,有很多时候我们需要MFC框架的DLL,下面说说,怎么编写一个MFC框架的DLL。
1、 首先从http://help.tdx.com.cn/book.asp下载“通达信DLL函数编程规范.rar”并解压提取PluginTCalcFunc.h头文件出来. 这个文件包含跟通达信股票软件交互的关键代码.
2、启动Microsoft Visual Studio 2010开发工具从菜单选择 “新建”->“项目”->"Visual C++"->"MFC"->"MFC DLL"并输入项目名称:TDXPlugin 然后在弹出的"MFC DLL向导"对话框中选择DLL类型为"使用共享MFC DLL的规则DLL".
 3、配置刚刚创建好的TDXPlugin项目属性(从菜单选择 "项目"->"TDXPlugin属性"->"常规")
    3.1 输出目录: C:\zd_ghzq\T0002\dlls   备注: 这个是通达信股票软件的安装目录, 视你的当前环境来填写. 当你进入安装目录的时候, 发现没有dlls这个文件夹时, 你可以自己创建.
    3.2 MFC的使用: 在静态库中使用MFC
 4、 在刚刚创建好的TDXPlugin项目中添加之前提取出来的PluginTCalcFunc.h头文件.
5、在TDXPlugin.cpp文件添加如下代码(注意: TDXPlugin.cpp原有的代码不要删除)
 
代码:
// TDXPlugin1函数是你自己编写的函数, 是跟通信达股票软件交互的函数.
void TDXPlugin1(int DataLen, float* pfOUT, float* pfINa, float* pfINb, float* pfINc)
 {
     AFX_MANAGE_STATE(AfxGetStaticModuleState());
     
     // 这里添加你自己的股票分析代码
}
 // g_CalcFuncSets全局结构, 存储你自己编写好的函数, 比如TDXPlugin1函数
PluginTCalcFuncInfo g_CalcFuncSets[] =
 {
     { 1, (pPluginFUNC)&TDXPlugin1 },
     { 0, NULL },
 };
 // 该函数为导出函数,给通信达股票软件调用并初始化
BOOL RegisterTdxFunc(PluginTCalcFuncInfo** pFun)
 {
     AFX_MANAGE_STATE(AfxGetStaticModuleState());
     if (*pFun == NULL)
     {
         (*pFun) = g_CalcFuncSets;
         return TRUE;
     }
     return FALSE;
 }
6、在TXDPlugin.def文件设置函数RegisterTdxFunc为导出函数.
 
 