📄 stockdrv.h
字号:
RCV_EKE_HEADEx m_head;
}RCV_POWER_STRUCTEx;
//////////////////////////////////////////////////////////////////////////////////
// 文件类型数据包头
// 注一:
//m_wDataType == FILE_BASE_EX
//m_dwAttrib = 股票证券市场,m_szFileName仅包含文件名
//m_FileTime = 基本面资料文件创建日期
// m_wDataType == FILE_NEWS_EX
//m_dwAttrib = 消息来源,m_szFileName 包含目录的文件名,目录名为消息来源
//m_dwSerialNo = 序列号
//如: "上交所消息\\0501Z012.TXT","新兰德\\XLD0001.TXT"
// m_wDataType == FILE_HTML_EX
//m_dwAttrib 保留,m_szFileName为URL
//m_wDataType== FILE_SOFTWARE_EX
//m_dwAttrib 分析软件类型,用于初步判断
//m_szFileName 分析软件 ID 特征字符串 + '\\' + 文件名
//如 "TongShi\\TS\\RECEIVE\\RECEIVE.EXE",
//ID 特征字符串为 "TongShi","TS\\RECEIVE\\RECEIVE.EXE" 为文件名
//特征字符串 和 文件名及其含义由分析软件商定义
// 注二:
//数据文件循环播出,每个文件有唯一的序列号,以避免重复接收
typedef struct tagRCV_FILE_HEADEx
{
DWORD m_dwAttrib;// 文件子类型
DWORD m_dwLen;// 文件长度
union {
DWORD m_dwSerialNo;// 序列号,对股评
time_t m_FileTime;// 文件创建时间
};
char m_szFileName[MAX_PATH];// 文件名 or URL
} RCV_FILE_HEADEx;
//////////////////////////////////////////////////////////////////////////////////
// 数据通知消息
//查询方式通知消息
//wParam = MsgPara_StkData有股票数据
//wParam = MsgPara_File有文件数据文件
//直接数据引用通知消息
//wParam = RCV_WPARAM;
// lParam 指向 RCV_DATA结构;
//返回 1 已经处理,0 未处理或不能处理,目前该返回值被忽略
// 注一:
// 记录数表示行情数据和补充数据(包括 Header)的数据包数,对文件类型数据,= 1
// 注二:
// 若 m_bDISK = FALSE,m_pData 为数据缓冲区指针
// ******** 数据共享,不能修改数据 **********
// m_bDISK = TRUE, m_pData 为该文件的存盘文件名,一般情况只有
// 升级软件等大文件用存盘方式
typedef struct tagRCV_DATA
{
int m_wDataType;// 文件类型
int m_nPacketNum;// 记录数,参见注一
RCV_FILE_HEADEx m_File;// 文件接口
BOOL m_bDISK;// 文件是否已存盘的文件
union
{
NEW_RCV_REPORT_STRUCTEx *m_pReportEx;
RCV_REPORT_STRUCTEx *m_pReport;
RCV_HISTORY_STRUCTEx *m_pDay;
RCV_MINUTE_STRUCTEx *m_pMinute;
RCV_POWER_STRUCTEx *m_pPower;
void *m_pData;// 参见注二
};
} RCV_DATA;
//////////////////////////////////////////////////////////////////////////////////
//APIs
#ifdef __cplusplus
extern "C"{
#endif
//////////////////////////////////////////////////////////////////////////////////
// 注册函数
// 股票初始化
// 入口参数:
//hWnd处理消息的窗口句柄
//Msg用户自定义消息
//nWorkMode接口工作方式,参见工作方式类型定义
// 返回参数:
// 1成功
//-1失败
// 注:
//注册后,驱动程序会向处理窗口发送消息; 若不注册,通过查询方式亦可取得数据
//若股票接收没启动,则启动股票接收程序
//int WINAPIStock_Init(HWND hWnd,UINT Msg,int nWorkMode);
int WINAPI Stock_Init(HWND hWnd,UINT Msg,int nWorkMode);
// 退出,停止发送消息
// 入口参数:
//hWnd处理消息的窗口句柄,同 Stock_Init 的调用入口参数
//返回参数:
// 1成功
//-1失败
//int WINAPI Stock_Quit(HWND hWnd);
int WINAPI Stock_Quit(HWND hWnd);
//////////////////////////////////////////////////////////////////////////////////
// 行情接口
// 取已接收到的股票总数
//int WINAPI GetTotalNumber();
int WINAPI GetTotalNumber();
/////////////////////////////////////////////////////////////////////////////////////
// 扩展行情接口
// 由序号取股票数据(扩展)
// 入口参数:
//nNo序号
//pBuf存放股票数据的缓冲区
// 返回参数:
// NoStockData无股票数据
// 注:
//该函数提供股票数据的主要数据;分析软件刚运行时,可以快速建立数据框架
//int WINAPI GetStockByNoEx(int nNo,RCV_REPORT_STRUCTEx * pBuf);
int WINAPI GetStockByNoEx(int nNo,RCV_REPORT_STRUCTEx * pBuf);
// 由股号取股票数据(扩展)
// 入口参数:
//pszStockCode股票代号
//nMarket证券市场
//pBuf存放股票数据的缓冲区
// 返回参数:
// NoStockData无股票数据
// 注:
//该函数提供股票数据的主要数据;分析软件刚运行时,可以快速建立数据框架
//int WINAPI GetStockByCodeEx(char * pszStockCode,int nMarket,RCV_REPORT_STRUCTEx * pBuf);
int WINAPI GetStockByCodeEx(char * pszStockCode,int nMarket,RCV_REPORT_STRUCTEx * pBuf);
//取下一新股票数据
// 入口参数:
//pBuf存放股票数据的缓冲区
// 返回参数:
// NoStockData无股票数据
// 注:
//该函数返回最新的股票数据,包含各字段数据
//int WINAPI GetNewStockDataEx(RCV_REPORT_STRUCTEx * pBuf);
int WINAPI GetNewStockDataEx(RCV_REPORT_STRUCTEx * pBuf);
// 扩展文件接口
// 入口参数:
//pHeader补充数据头 或 文件头
//pHeader.m_pData指向数据缓冲区
// 返回参数:
//数据文件长度,== 0,表示无数据
// 注:
//若 pHeader == NULL 则只返回文件长度,以便分配内存,不拷贝数据.
//intWINAPI GetNextFileEx(RCV_DATA * pHeader);
int WINAPI GetNextFileEx(RCV_DATA * pHeader);
// 激活接收程序,进行设置
// 入口参数:
//bSetupTRUE显示窗口,进行设置
//FALSE隐含窗口
// 返回参数:
// 1成功
//-1失败
//intWINAPI SetupReceiver(BOOL bSetup);
int WINAPI SetupReceiver(BOOL bSetup);
//取得股票驱动信息
//入口参数:
//nInfo索引
//pBuf缓冲区
//出口参数:
//nInfo == RI_IDSTRING,返回特征字符串长度,pBuf 为特征字符串
//如:"BoyaNet_StockDrv_3.00"
//nInfo == RI_IDCODE,返回信息卡 ID 号,pBuf 为字符串形式的 ID 号
//如:0x78001234 "78001234"
//nInfo == RI_VERSION,返回信息卡版本号,pBuf 为字符串版本
//如: 3.00 "3.00"
//nInfo == RI_ERRRATE,取信道误码,
//nInfo == RI_STKNUM,取上市股票总家数
//DWORD WINAPI GetStockDrvInfo(int nInfo,void * pBuf);
DWORD WINAPI GetStockDrvInfo(int nInfo,void * pBuf);
/////////////////////////////////////////////////
//STOCKDRV.dll 导出函数原型
int WINAPI StockInit(char xxx[1024]);//???????
int WINAPI SetParam(char xxx[1024]);//???????
int WINAPI GetTradeData(char xxx[1024]);//???????
int WINAPI SetCodeTable(char xxx[1024]);//???????
void WINAPI SCAskData(void *pAsk, int nSize);//???数畅接口
int WINAPI SCStockInit(int SoftId,HWND hWnd,UINT Msg);//???????SCStockInit(SoftId:Integer;hWnd:THandle;Msg:THandle):Integer
int WINAPI ReInitStockInfo(char xxx[1024]);//???????
int WINAPI GetStockByCode(char * pszStockCode,int nMarket,RCV_REPORT_STRUCTEx * pBuf);
int WINAPI GetStockByCodeEx(char * pszStockCode,int nMarket,RCV_REPORT_STRUCTEx * pBuf);
int WINAPI GetStockByNo(int nNo,RCV_REPORT_STRUCTEx * pBuf);
int WINAPI GetStockByNoEx(int nNo,RCV_REPORT_STRUCTEx * pBuf);
int WINAPI GetTotalNumber();
DWORD WINAPI GetStockDrvInfo(int nInfo,void * pBuf);
int WINAPI SetupReceiver(BOOL bSetup);
int WINAPI Stock_Quit(HWND hWnd);
int WINAPI Stock_Init(HWND hWnd,UINT Msg,int nWorkMode);
/////////////////////////////////////////////////
#ifdef __cplusplus
}
#endif
//通视公司-有线接收
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -