1。 使用自带的AddinDemo.rar中的例子,用vc2005和vc6编译,在2.32和2.34都出现同样的问题。按下边的“获取板块数据”按键出现assertion failed。按上边的“获取历史数据”则没有问题。
Debug Assertion Failed!
Program:F:\Weisoft\WinStock.exe
File:dbgheap.c
line:1044
Expression: _CrtIsValidHeapPointer(pUserData)
For information on how your program can cause an assertion failure, see the Visual C++ documentation on asserts.
2。如果是交易时间中途连接行情,主图的数据是会自动更新历史记录,而叠加的品种则不会,需要先打开叠加的品种,然后才更新。
3。分笔成交图不可以叠加其他品种,我是改用s1(一秒图)方式,不知有啥更好的办法?
4。如何同时开多个技术分析窗口?
5。cpu占有率比较高,把技术分析窗口最小化,cpu占有率可以变化10%左右(e8400cpu)。除了减少数据外,还有其他办法吗?
头次提问,问题比较多,见谅:)。
感谢提交!
2.是的,要浏览了该品种,才会自动补数据
3.1s图是可以,暂时没有更好办法
4.建立多框架,置顶的有视频教程.
5.看看这个帖子,看是否有帮助http://www.weistock.com/bbs/dispbbs.asp?boardid=4&Id=3286
多谢及时回复,很有用。
关于1,又试了试,发现time_t是64位,改为32位,行情数据显示正确了,不过assertion还是没大的变化,仅行数变了
Debug Assertion Failed!
Program:F:\Weisoft\WinStock.exe
File:dbgheap.c
Line:1252
Expression:_CrtIsValidHeapPointer(pUserData)
For ...
另外试着把按键的处理函数变成空函数,则没有这个错误。希望这个信息对调试有用。
void CMainWindowDlg::OnButtonGet2()
{
//CArray<BLOCK_STRUCT, BLOCK_STRUCT&> arBlock;
//g_pMainFormework->GetReportData(arBlock,"上海A股",0);//取上海A股市场分组的全部品种
//if(arBlock.GetSize()>0)
//{
// CString strMsg;
// strMsg.Format("取到%d个品种, 第一个品种的代码是 %s 市场代码 %d", arBlock.GetSize(),arBlock[0].m_szLable,arBlock[0].m_nMarket);
// AfxMessageBox(strMsg);
//}
CString strMsg;
strMsg.Format("按钮按下");
AfxMessageBox(strMsg);
}
另外两个问题:
6。在编译时,是否需要设置字节对齐? 编译器用的是vc2005。
7。金字塔本身是使用那个编译器编译的?想使用同样的编译器,以减少兼容性的问题。
ADDINDEMO和金字塔是用VC6开发的,可能存在少许不兼容,一般你用RELEASE后就没事了
已经在头文件进行字节对齐声明
谢谢及时回复。