升级到步步汇盈后,无法在C语言接口中获得除权数据
我使用的是“飞狐交易师“C语言接口”扩展程序调用接口规范V3.0”,在飞狐5.0中一切正常。升级到步步汇盈后,发现struct tagCALCINFO中的最后几项:
char* m_strStkName; //股票名称
SPLITDATA* m_pSplitData; //除权数据
int m_nNumSplitData;//除权次数
统统为乱码,因此无法获得除权数据。
请高手帮忙,多谢! 本帖最后由 person 于 2015-5-28 14:34 编辑
在time.h之前多加一行
查一下,感谢反馈 非常感谢您的及时回复!
但我加了这个宏之后再运行,m_pSplitData、m_nNumSplitData最后两个字段还是乱的。
另外,我一直使用的C++Builder 6,本身就是32位的。
运行时刻仔细观察struct tagCALCINFO结构,所有字段值一直到m_pCalcParam,经验证,都是对的。
那么,唯一的可能,是不是m_pCalcParam字段之后的结构定义有了变化?
请问您能否给我一份最新的接口定义头文件,多谢!
附上我手头的结构定义:
//调用接口信息数据结构
typedef struct tagCALCINFO
{
DWORD m_dwSize; // 结构大小
DWORD m_dwVersion; // 调用软件版本(V2.10 : 0x210)
DWORD m_dwSerial; // 调用软件序列号
char* m_strStkLabel; // 股票代码
BOOL m_bIndex; // 大盘
int m_nNumData; // 数据数量(m_pData,m_pDataEx,m_pResultBuf,m_pCalcParam.m_pfParam数据数量)
STKDATA* m_pData; // 常规数据,注意:当m_nNumData==0时可能为 NULL
STKDATAEx* m_pDataEx; // 扩展数据,分笔成交买卖盘,注意:可能为 NULL
int m_nParam1Start; // 参数1有效起始位置
float* m_pfParam1; // 调用参数1
float* m_pfParam2; // 调用参数2
float* m_pfParam3; // 调用参数3
float* m_pfParam4; // 调用参数3
float* m_pResultBuf; // 结果缓冲区
DATA_TYPE m_dataType; // 数据类型
float* m_pfFinData; // 财务数据
// 以上与分析家兼容,所以沿用其结构和名称
// 以下为飞狐交易师扩展
DWORD m_dwReserved; // 保留
char m_dwReserved2; // 保留
int m_nNumParam; // 调用参数数量
CALCPARAM* m_pCalcParam; // 调用参数数组
DWORD m_dwReservedEx;// 保留
char* m_strStkName; // 股票名称
SPLITDATA* m_pSplitData; // 除权数据
int m_nNumSplitData; // 除权次数
} CALCINFO;
收下这个文件
多谢person大人!:D
页:
[1]