以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  高级功能研发区  (http://weistock.com/bbs/list.asp?boardid=5)
----  g_pMainFormework->GetDataInfo(&stData) 返回数据有偏移  (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=77440)

--  作者:yu_xm
--  发布时间:2015/4/9 23:53:51
--  g_pMainFormework->GetDataInfo(&stData) 返回数据有偏移


PCALCINFO stData = {0};
stData.m_dataType = DAY_DATA;
stData.m_bIsPow = 0; 
stData.m_wMarket = \'QS\'; 
strcpy(stData.m_szLabel,"AU06"); 
if(g_pMainFormework->GetDataInfo(&stData))
{
stData.m_pReport->m_fNewPrice;




stData.m_pReport->m_fNewPrice; 获取到的是持仓量,不是最新报价,
stData.m_pReport->m_fOI 获取的竟然是最新价格,刚好偏移了4个字节

请问怎么处理?

--  作者:王锋
--  发布时间:2015/4/10 0:33:48
--  

应该是你用的编译器, time_t 类型是64位的,金字塔的time_t是32位的,建议你仔细看看插件的头文件帮助描述


--  作者:yu_xm
--  发布时间:2015/4/10 11:40:23
--  
新的笔记本大多数是64位的 win8.1。

请问64位win 8.1操作系统,用VC6 SP5编译会出现这样的问题吗?

--  作者:王锋
--  发布时间:2015/4/10 12:17:36
--  

不会


--  作者:ybeetle
--  发布时间:2015/4/10 13:57:55
--  
我还是这个问题股票名也偏了4字节, 他们说用vc6.0 就行了。。
--  作者:yu_xm
--  发布时间:2015/4/10 15:50:22
--  
请问什么时候出支持VS2008/VS2013的版本,毕竟VC6太老了, Win7 Win8.1都安装不了VC6.

--  作者:王锋
--  发布时间:2015/4/10 18:03:10
--  
2楼已经回复你了,你这个问题不是版本问题就能解决,即便金字塔出高版本编译器你照样需要对time_t做字长的限定,建议你百度一下time_t的一些相关资料,或者你能够耐心的仔细的好好看看StockFunc.h这个头文件里的描述
[此贴子已经被作者于2015/4/10 18:06:15编辑过]

--  作者:yu_xm
--  发布时间:2015/4/11 19:13:15
--  

在AddinDemo上修改的,不是FmlDevelopeStockFunc.h文件是FmlDevelope的。

增加#define _USE_32BIT_TIME_T后,偏移问题可以解决,除了这个还有别的隐患吗?


--  作者:王锋
--  发布时间:2015/4/11 19:53:22
--  
另外一个就是插件接口使用了CString和CArray类对象,如果你的插件编译版本与金字塔版本不一致会导致运行出错,这个问题下个版本我们会重新设计一个接口,去掉这2个类的使用,保证所有编译器都能兼容