非常感谢您的及时回复!: d1 f" ^: p0 F9 y4 o8 d+ m
但我加了这个宏之后再运行,m_pSplitData、m_nNumSplitData最后两个字段还是乱的。; ]+ I6 {% U" x- e7 |! @3 n
另外,我一直使用的C++Builder 6,本身就是32位的。( w+ x" X7 V/ P( {4 W6 H
3 C% R; F- [; J/ h5 e. ~5 M
运行时刻仔细观察struct tagCALCINFO结构,所有字段值一直到m_pCalcParam,经验证,都是对的。
3 p+ s. ] ^ I G+ y# m6 c那么,唯一的可能,是不是m_pCalcParam字段之后的结构定义有了变化?& s( O) H. N; [! P, Z1 \4 v
请问您能否给我一份最新的接口定义头文件,多谢!
2 U& e" z' U$ r+ o
# E8 U+ q7 \" U: a9 R; B附上我手头的结构定义:
- l- s/ G) w* R g" ~5 I//调用接口信息数据结构( f+ W6 t* [9 \* E
typedef struct tagCALCINFO' I0 C0 o' z" C6 q$ S* u( @
{$ T! }+ A+ B) S2 |/ F% D, ?
DWORD m_dwSize; // 结构大小) a) q, t' |: c. [8 x
DWORD m_dwVersion; // 调用软件版本(V2.10 : 0x210)
5 l* s- H0 L! m; j DWORD m_dwSerial; // 调用软件序列号& O8 A( i2 V4 a. Y
char* m_strStkLabel; // 股票代码
|/ d# j( S; X) ^7 N* E& o$ B) Z; b BOOL m_bIndex; // 大盘+ Y1 R! c2 O, A
% ^7 P Z9 O: V) a) ^( Z int m_nNumData; // 数据数量(m_pData,m_pDataEx,m_pResultBuf,m_pCalcParam[i].m_pfParam数据数量)
1 _: |, R7 f8 D/ T STKDATA* m_pData; // 常规数据,注意:当m_nNumData==0时可能为 NULL# h1 J# J4 g) q$ A: h6 N$ e
STKDATAEx* m_pDataEx; // 扩展数据,分笔成交买卖盘,注意:可能为 NULL
8 [6 V. [7 ~( Q, u( p6 I1 l( ?
' h8 B9 k: z- H# s* \ int m_nParam1Start; // 参数1有效起始位置
- w% p( U- ~5 {6 l+ i4 y float* m_pfParam1; // 调用参数1
4 q+ y$ {- y7 b2 Y/ W float* m_pfParam2; // 调用参数2
7 s& Y6 H" k8 O8 e* Z float* m_pfParam3; // 调用参数3
, ^: |0 Z! {7 ^, k% T float* m_pfParam4; // 调用参数3
3 s4 S2 J0 t# V8 H4 C2 `2 X
5 w( P( a! p. C float* m_pResultBuf; // 结果缓冲区, r0 l, F* D7 e) G3 {/ F* t$ W
DATA_TYPE m_dataType; // 数据类型
9 {& c3 R% c- l9 ] float* m_pfFinData; // 财务数据
: ~4 x6 o M, w6 T# A1 f3 r! B/ P9 g, i2 t: |
// 以上与分析家兼容,所以沿用其结构和名称
, j) z% S; Q( d3 w8 W* I7 d+ N P3 N4 ~9 L0 i' X) x
// 以下为飞狐交易师扩展* s. x, J" @3 D# X/ q
# Y" i; P5 W% d! |; y DWORD m_dwReserved; // 保留8 Z& b1 ]9 c" X" x
char m_dwReserved2[3]; // 保留
& t8 u! {( _4 R2 j/ r5 q8 j1 U9 ~. F) @- l7 M" k
int m_nNumParam; // 调用参数数量
2 n- A+ ?# S6 `+ v CALCPARAM* m_pCalcParam; // 调用参数数组3 x& N6 u5 @1 [3 h4 ^% C5 }
; H y* k( z1 ]* F, p8 j
DWORD m_dwReservedEx[4]; // 保留
- o" E8 Z# V {1 d7 k
" l0 r; V+ N+ ^* P- r char* m_strStkName; // 股票名称- Y% I9 q, A+ H$ B5 {+ B# V' G1 b; z: w
* l8 \. S3 ~' z9 Y4 d4 ? SPLITDATA* m_pSplitData; // 除权数据
4 O% v4 F9 Q1 h5 h: {, U% ~ int m_nNumSplitData; // 除权次数
1 v$ A. K" W) A& n* i$ q# f/ a6 t% Q
} CALCINFO;
5 B* n* E# `: i, a# `1 f/ S4 n* G) E
* Q& \0 S( B( l" f- n |