亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? scstkdrv.h

?? 股票軟件
?? H
字號:
#ifndef _STOCK_DRV_SC_H_
#define _STOCK_DRV_SC_H_

#include "Stockdrv.h"

// 更新日期:20060131
// 更新內容:
// 1. tagSCPankou里面的時間改為long類型。
//    SC_PankouReply里面的個數short m_nCount改為long m_lCount
// 2. SC_KLineAsk和SC_KLineReply有所調整
// 3. 擴充市場定義,三板、外匯、期貨、臺灣市場,使用SCMarket返回的m_wMarket值即可。
// 4. 大部分數據類型的的#define值有更改,重新編譯即可
// 5. SC_Downdload中的m_nCount改為m_lCount,類型改為long. 
//    結構名稱從'SC_Downdload'改為'SC_Download'
// 6. SH_MARKET_EX、SZ_MARKET_EX等的定義已刪除,直接用SCMarket里面的m_wMarket即可。
// 7. 初始化函數名改為SCInit
// 8. 示范代碼更加詳細,請參考我們的例子,SCDemo

#define	STKLABEL_LEN				10		// 股號數據長度,國內市場股號編碼兼容錢龍
#define	STKNAME_LEN					32		// 股名長度
#define	TITLE_LEN					64		// 信息地雷標題長度

#define SC_INIT						0x2001	// SCInit調用

#define SC_CLEAR_PREVREQ			0x2101	// 撤銷前面的所有請求,建議在發請求(或組合請求)之前調用
#define SC_MARKET					0x2131	// 請求指定市場的信息,無需請求,有變化就會自動發送

#define SC_NOWDATA					0x2201

#define SC_PANKOU					0x2301	// 請求盤口數據,對應:long m_time,建議使用這個。

#define SC_IMTYPELIST				0x2401	// 請求信息地雷信息分類表
#define SC_IMTITLE					0x2402	// 請求信息地雷標題列表
#define SC_IMCONTENT				0x2403	// 請求信息地雷數據(f10, 交易所公告、實時和歷史的個股信息等)

#define SC_KLINE					0x2501	// 請求K線數據(日線)

#define SC_CQ						0x2601	// 請求除權數據

#define SC_DL_KLINE					0x2701	// K線數據下載
#define SC_DL_CQ					0x2702	// 除權數據下載
#define SC_DL_XX					0x2703	// 信息下載,如F10、交易所公告、新聞等
#define SC_DL_TRACE					0x2704	// 明細數據,舊的,新版已不用
#define SC_DL_5MIN					0x2705	// 5分鐘K線下載


#pragma pack(1)

struct SCHead {								// 請求包頭
	WORD		m_nType;					// 請求/應答類型,SC_MARKET、SC_IMCONTENT等
	char		m_cStatus;					// 當為應答包時,m_cStatus=1成功,m_cStatus=0失敗,m_cStatus=2離線
	long		m_lIndex;					// 包的唯一索引。不要設為0,請求的時候賦值,并在應答包中
											// 判斷是否與請求包中的相同,如果不同,則表示不是這個請求包對應的應答包
											// 如果這個值為0,表示不是請求引起的數據變化
};

typedef struct tagStock {					// 證券
	char	m_szLabel[STKLABEL_LEN];		// 股票代碼,以'\0'結尾
	char	m_szName[STKNAME_LEN];			// 股票名稱,以'\0'結尾
	short	m_nHand;						// 每手股數
} StockInfo;

typedef struct tagMarket {					//市場內容
	union {
		WORD			m_wMarket;			//市場代碼, 'HS', 'SZ', 'BS', 'HW', 'KH', 'ZH', 'QS', 'QD', 'QZ', 'WT',
		char			m_EShortName[3];	//英文簡寫, "SH", "SZ", "SB", "WH", "HK", "HZ", .....
	};
	char			m_Name[16];				//市場名稱
	char			m_CShortName[5];		//中文簡稱
	unsigned long	m_lProperty;			//市場屬性(未定義)
	unsigned long	m_lDate;				//數據日期(20030114)
	short			m_PeriodCount;			//交易時段個數
	short			m_OpenTime[5];			//開市時間 1,2,3,4,5
	short			m_CloseTime[5];			//收市時間 1,2,3,4,5
	short			m_nCount;				//該市場的證券個數
	StockInfo       m_Siif[1];   
} SCMarket;

typedef struct tagStockID {					//證券標識
	WORD			m_wMarket;				//市場代碼
	short			m_nIndex;				//在該市場SCMarket::m_Siff中的偏移
} StockID;


typedef struct tagSCNow
{
	StockID m_sID;
	long	m_time;							// 成交時間

	float	m_fLastClose;					// 昨收
	float	m_fOpen;						// 今開
	float	m_fHigh;						// 最高
	float	m_fLow;							// 最低
	float	m_fNewPrice;					// 最新
	float	m_fVolume;						// 成交量
	float	m_fAmount;						// 成交額

	long	m_lStroke;						// 本次實際成交筆數
	float	m_fBuyPrice[5];					// 申買價1,2,3,4,5
	float	m_fBuyVolume[5];				// 申買量1,2,3,4,5
	float	m_fSellPrice[5];				// 申賣價1,2,3,4,5
	float	m_fSellVolume[5];				// 申賣量1,2,3,4,5
} RCV_NOW_STRUCTEx;

typedef struct tagSCPankou {				
	long	m_time;							// UCT

	float	m_fHigh;						// 最高
	float	m_fLow;							// 最低
	float	m_fNewPrice;					// 最新
	float	m_fVolume;						// 成交量
	float	m_fAmount;						// 成交額

	long	m_lStroke;						// 本次實際成交筆數
	float	m_fBuyPrice[5];					// 申買價1,2,3
	float	m_fBuyVolume[5];				// 申買量1,2,3,
	float	m_fSellPrice[5];				// 申賣價1,2,3
	float	m_fSellVolume[5];				// 申賣量1,2,3
} RCV_PANKOU_STRUCTEx;

/*
typedef union tagRCV_HISTORY_STRUCTEx
{
	struct
	{
		long	m_time;				//UCT
		float	m_fOpen;			//開盤
		float	m_fHigh;			//最高
		float	m_fLow;				//最低
		float	m_fClose;			//收盤
		float	m_fVolume;			//量
		float	m_fAmount;			//額
		WORD	m_wAdvance;			//漲數,僅大盤有效
		WORD	m_wDecline;			//跌數,僅大盤有效
	};
} RCV_HISTORY_STRUCTEx;

typedef union tagRCV_POWER_STRUCTEx
{
	struct
	{
		long	m_time;				// UCT
		float	m_fGive;			// 每股送
		float	m_fPei;				// 每股配
		float	m_fPeiPrice;		// 配股價,僅當 m_fPei!=0.0f 時有效
		float	m_fProfit;			// 每股紅利
	};
}RCV_POWER_STRUCTEx,*PRCV_POWER_STRUCTEx;
*/

///////////////////////////////////////////////////////////////////////////////////
// 引擎初始化包
struct SC_InitAsk {							// 發出初始化請求,調用SCInit時使用,無對應返回包
	SCHead				m_Head;
	DWORD				m_dwSoftware;		// 分析軟件標識,由數暢分配
	HWND				m_hWnd;				// 用來接收數據的窗口句柄
	DWORD				m_nMsg;				// 用來接收數據的消息
};


///////////////////////////////////////////////////////////////////////////////////
//請求包和應答包
struct SC_MarketReply {		// 這個包無需請求即可收到,在市場信息變化的時候就可收到
	SCHead				m_Head;
	SCMarket			m_Market;
};

struct SC_NowDataReply {	// 這個包無需請求即可收到。數據有更新,會自動發送
	SCHead				m_Head;
	short				m_nCount;
	RCV_NOW_STRUCTEx	m_Now[1];
};

struct SC_PankouAsk {				// 請求一天盤口數據,現支持當天,歷史盤口將通過下載獲得
	SCHead				m_Head;
	StockID				m_sID;
	long				m_lDate;	// FORMAT: 20010305
};

struct SC_PankouReply {
	SCHead				m_Head;
	StockID				m_sID;
	long				m_lDate;			// FORMAT: 20010305
	float				m_fLastClose;		// 昨收
	float				m_fOpen;			// 今開
	long				m_lCount;
	RCV_PANKOU_STRUCTEx	m_Data[1];		
};

//define for SC_KLineAsk::m_wDataType
#define KLINE_DAYDATA			0		//日線
#define KLINE_MIN5DATA			1		//5分鐘線

// 注意:
// 1、由于服務器的設置,可能只能收到最近某一時段的數據,更多的數據,可以通過下載獲得。
// 2、對于K線請求包,當表示日線時,long的格式為yyyymmdd,
// 3、對于K線請求包,當為五分鐘線時,long的格式如下面這個TDate結構所示
//	struct TDate {		// 五分鐘時間格式
//		unsigned long m_Minute : 6;
//		unsigned long m_Hour : 5;
//		unsigned long m_Day  : 5;
//		unsigned long m_Month : 4; 
//		unsigned long m_Year : 12;
//	};
// 4、關于時間的轉行,我們提供例子中有示范代碼,可參考。
// 5、對K線應答包,日線和無分鐘的時間統一為long格式,已經包含日期和分鐘信息。

struct SC_KLineAsk {
	SCHead				m_Head;
	StockID				m_sID;
	WORD				m_wDataType;		// KLINE_DAYDATA or KLINE_MIN5DATA
	long				m_tBegin;			// 開始時間或位置,0表示從第一個數據開始
	long				m_tEnd;				// 結束時間或請求數量,0表示直到結束
};

struct SC_KLineReply {
	SCHead				m_Head;
	StockID				m_sID;
	WORD				m_wDataType;		// KLINE_DAYDATA or KLINE_MIN5DATA
	long				m_lDataCount;		// m_pData數量
	RCV_HISTORY_STRUCTEx m_pData[1];		
};

// 除權數據不校驗,總是以服務器的為準
struct SC_CQAsk {
	SCHead				m_Head;
	StockID				m_sID;
};

struct SC_CQReply {
	SCHead				m_Head;
	StockID				m_sID;
	short				m_nCount;
	RCV_POWER_STRUCTEx	m_pData[1];			// m_head不使用
};

//////////////////////////////////////////////////////////////////////////////////
//////////////  信息地雷接口
//信息地雷類型屬性的定義
#define CLASS_JYSXX			0		// 交易所公告
#define CLASS_STKINFO       1		// 歷史信息地雷
#define CLASS_NEWS          2		// 新聞
#define CLASS_STOCKBASE     3		// F10
#define CLASS_MKTINFO       4		// 綜合資訊

struct SCIMType {					// 信息分類,如重大事項、公司公告、個股點評等
	char    m_cFlag[8];
	char    m_cTitle[24];
};

struct SC_IMTypeReply {				// 無需請求,自動返回
	SCHead			m_Head;
	char			m_cVendor;
	char            m_cClass;
	short			m_nSize;
	SCIMType		m_Type[1];
};

struct SCIMTitle {
	unsigned long  m_lID;			// 標題ID
	long		   m_lChkSum;		// 新增加,所對應的內容的Checksum
	unsigned long  m_lDate;			// yyyymmdd
	unsigned long  m_lTime;			// hhmmss
	char           m_cFlag[8];
	char		   m_cMainType[9];
	char           m_cSubtype[17];
	char		   m_cTitle[64];
	char		   m_szLabel[9];	// 股票代碼,以'\0'結尾
};

struct SCIMTitleID {
	unsigned long  m_lID;			// 標題ID
	long		   m_lChkSum;		// 新增加,所對應的內容的Checksum
};

struct SC_IMTitleAsk {				// 請求某個時間段內信息地雷標題
	SCHead			m_Head;
	char			m_cClass;
	StockID			m_sID;			//對于個股資訊、基本資料F10使用m_sID,交易所公告只使用
	                                //其中的市場,新聞、綜合資訊不使用這個字段
	long			m_lStartDate;	//新聞、綜合資訊、交易所公告只使用m_lStartDate,m_lEndDate不使用
	long			m_lEndDate;		//個股資訊使用m_lStartDate,m_lEndDate;
};

struct SC_IMTitleReply { 
	SCHead			m_Head;
	char			m_cVendor;		// 應答包有廠商
	char			m_cClass;
	StockID			m_sID;				//對于個股資訊、基本資料F10、使用m_sID,
	short           m_nSize;			// 標題個數
	SCIMTitle		m_IMTitle[1];
};

struct SC_IMDataAsk {					// 信息地理內容請求,一次可請求多個標題的內容
	SCHead			m_Head;
//	char			m_cVendor;			// 請求包沒有廠商代碼
	char			m_cClass;
	StockID			m_sID;				//對于個股資訊、基本資料、個股信息地雷使用m_sID,
	short			m_nSize;			// 標題ID個數
	long			m_lDate;			//日期,新聞、交易所公告、綜合資訊需要,一次只能設一個日期
	SCIMTitleID		m_ID[1];
};

struct SCIMData {						// 信息地理內容
	SCIMTitle		m_IMTitle;
	unsigned long   m_lDataLength;
	char		    m_cData[1];
};

struct SC_IMDataReply {					// 信息地雷內容應答,一次可返回多個標題和內容
	SCHead			m_Head;
	char			m_cVendor;
	char			m_cClass;
	StockID			m_sID;				//對于個股資訊、基本資料F10使用m_sID,
	long			m_lDate;			//對于新聞、綜合資訊、財經新聞、券商信息使用m_lDate
	short			m_nSize;
	SCIMData		m_Data[1];
};

typedef struct tagIMTitle {
	unsigned long	m_lOffset;
	unsigned long	m_lDataLength;
	long			m_time;
	char			m_cCaption[TITLE_LEN];
} IMTitleEx;

// 在引擎里面進行下載操作之后,會自動收到這個包,里面包含了下載下來的指定數據。
struct SC_Download {						// 數據下載接口
	SCHead					m_Head;			// m_head中僅m_nType有效
	StockID					m_sID;
	long					m_lCount;		// // m_KLine,m_power,m_Trace,m_Title的個數
	union {
		RCV_HISTORY_STRUCTEx	m_KLine[1]; // k線、五分鐘數據下載
		RCV_POWER_STRUCTEx		m_power[1]; // 除權數據下載
		RCV_PANKOU_STRUCTEx		m_Trace[1];	// 明細數據下載
		struct {							// F10、交易所公告、新聞、綜合資訊下載
			char			m_cClass;		// 類別
			IMTitleEx		m_Title[1];
			char			m_cData[1];
		};
	};
};

#pragma pack()

//////////////////////////////////////////////////////////////////////////////////
//新增接口
#ifdef __cplusplus
extern "C"{
#endif

//新接口的DLL請使用HKEY_LOCAL_MACHINE/SOFTWARE/StockDrv下的SCDriver項

// 接口函數1
//****************************************************************************************\\
// 設置處理消息的窗口句柄和自定義的消息
// SCAskData請求的數據在這個消息中返回結果
// 但是,并不是一定要調用SCAskData才有數據返回,在沒有調用SCAskData的情況下,有下面三種情況會返回數據
// 1、市場變化(比如初始化,新股上市等),返回SC_MarketReply數據
// 2、開市時段內,實時數據不斷變化,返回SC_NowReply數據
// 3、在引擎里面進行了下載操作,返回下載下來的指定數據SC_Downdload
// 其它情況,通過調用SCAskData,返回指定類型的數據。
BOOL WINAPI SCInit(void *pInit, int nSize); // SC_InitAsk, sizeof(SC_InitAsk)
//****************************************************************************************//

// 接口函數2
//****************************************************************************************\\
// 退出的時候調用這個函數,以釋放調用SCInit時分配的資源。
void WINAPI SCQuit();
//****************************************************************************************//


//  接口函數3
//****************************************************************************************\\
// 軟件向信息平臺請求數據,
// nSize為請求包的大小
// pAsk分別為 SC_IMVendorAsk *, SC_TraceAsk *, SC_NowAsk *, SC_IMAsk * 等
// 數據在函數SCInit所設的消息中返回,可參考CSCDemoDlg::OnReply(...)
// 消息中的數據可能在SCAskData之后返回,也可能在SCAskData尚未結束之前返回
// 用戶通過調用AskData,信息平臺可能從本地返回數據,也可能把用戶的請求轉交到網上的服務器
// 再返回數據,對用戶來說,效果和用法都是一樣的,可參考CSCDemoDlg::OnReply(...)。
void WINAPI SCAskData(void *pAsk, int nSize);
//****************************************************************************************//


//  接口函數4
//****************************************************************************************\\
// 取系統信息
enum TSCInfo { 
	INFO_VERSION = 1,
	INFO_USERNAME = 2,
};
UINT WINAPI SCGetInfo(TSCInfo Info, void *pData, int *nSize);
// Info=INFO_VERSION時,pData可設為NULL,函數返回值為引擎版本號
// Info=INFO_USERNAME時,pData指向一個字符串,
//                       返回值為0表示未登錄,pData指向的內容未定義
//                       返回值為1表示已成功登錄,pData指向的內容為用戶名
//****************************************************************************************\\



#ifdef __cplusplus
}
#endif


#endif // _STOCK_DRV_SC_H_

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
免费高清在线一区| 99r国产精品| 91免费观看在线| 欧美一区二区三区在线视频| 久久九九久精品国产免费直播| 亚洲一区二区影院| 国产99精品在线观看| 日韩一区二区三区在线| 亚洲免费观看高清完整版在线| 精品一区二区三区香蕉蜜桃| 欧美色视频一区| 综合婷婷亚洲小说| 成人午夜视频在线| 欧美成人女星排名| 午夜国产精品影院在线观看| 色综合天天视频在线观看| 久久久久国产免费免费| 老司机一区二区| 91精品免费观看| 亚洲午夜私人影院| 在线观看亚洲精品| 樱桃国产成人精品视频| 国产成人三级在线观看| 久久网站最新地址| 久久精品久久精品| 欧美成人a∨高清免费观看| 日韩av一级电影| 欧美一区二区在线免费观看| 亚洲天堂a在线| 99久久久无码国产精品| 亚洲欧洲精品天堂一级 | 亚洲欧洲日产国产综合网| 国内精品伊人久久久久av影院 | 91香蕉视频mp4| 亚洲欧洲99久久| 99精品国产热久久91蜜凸| 1024亚洲合集| 色欧美88888久久久久久影院| 国产精品免费观看视频| a级精品国产片在线观看| 国产三级一区二区三区| 高清免费成人av| 中文字幕一区二区三区不卡在线| k8久久久一区二区三区| 亚洲激情在线激情| 欧美三区免费完整视频在线观看| 日韩影院免费视频| 久久这里只有精品6| youjizz久久| 婷婷六月综合网| 日韩欧美高清dvd碟片| 国产成人丝袜美腿| 亚洲免费在线观看视频| 欧美日韩成人在线| 国产在线视视频有精品| 国产精品久久二区二区| 欧美最猛性xxxxx直播| 免费精品视频在线| 国产精品乱码一区二区三区软件| 在线欧美日韩精品| 九一九一国产精品| 国产精品成人一区二区艾草 | 亚洲成人黄色影院| 精品日韩av一区二区| 国产激情91久久精品导航| 亚洲日本在线观看| 日韩三级视频中文字幕| 成人激情午夜影院| 日韩国产成人精品| 亚洲色图清纯唯美| 欧美一区二区三区精品| 99久久久无码国产精品| 麻豆91精品视频| 亚洲日本成人在线观看| 日韩美女天天操| 色偷偷一区二区三区| 久久国产精品第一页| 一区二区三区视频在线观看 | 亚洲精品国产精品乱码不99| 在线播放/欧美激情| 久久精品国产秦先生| 国产精品日日摸夜夜摸av| 欧美日韩国产bt| 成人aaaa免费全部观看| 男男成人高潮片免费网站| 亚洲视频你懂的| 国产亚洲精久久久久久| 3d动漫精品啪啪一区二区竹菊| jizzjizzjizz欧美| 国产资源在线一区| 日韩电影在线一区二区三区| 亚洲蜜臀av乱码久久精品| 国产日韩高清在线| 精品久久人人做人人爱| 91.com视频| 欧美日韩免费电影| 色悠悠亚洲一区二区| 99久久精品免费看国产 | 麻豆成人久久精品二区三区小说| 亚洲国产精品久久人人爱| 中文字幕一区二区日韩精品绯色| 精品国产亚洲在线| 欧美一二三在线| 欧美一区二区三区小说| 欧美日韩国产高清一区二区三区| 色天使色偷偷av一区二区| 成人黄色av电影| 成人午夜激情视频| 粉嫩久久99精品久久久久久夜| 国产一区二区在线影院| 久久草av在线| 国内精品写真在线观看| 精品亚洲免费视频| 精品一区二区在线看| 狠狠色丁香九九婷婷综合五月| 蜜臀91精品一区二区三区| 老司机一区二区| 久久99热国产| 国产一区二区伦理| 国产99久久久国产精品潘金| 懂色av一区二区三区蜜臀| 豆国产96在线|亚洲| heyzo一本久久综合| 97久久超碰精品国产| 在线观看欧美黄色| 欧美浪妇xxxx高跟鞋交| 欧美一区二区三区免费观看视频| 欧美大片拔萝卜| 国产亚洲成年网址在线观看| 国产精品久久夜| 亚洲欧美日韩中文字幕一区二区三区 | 毛片av中文字幕一区二区| 久久机这里只有精品| 国产精品888| 99国产精品国产精品久久| 在线观看中文字幕不卡| 91精品国产色综合久久久蜜香臀| 日韩女同互慰一区二区| 国产欧美精品区一区二区三区 | 国产欧美中文在线| 日韩美女精品在线| 丝袜a∨在线一区二区三区不卡| 六月婷婷色综合| 成a人片亚洲日本久久| 欧美色图第一页| 久久精品亚洲一区二区三区浴池| 国产精品乱人伦一区二区| 亚洲成va人在线观看| 国产美女一区二区| 在线观看一区二区视频| 精品国产91乱码一区二区三区 | 蜜桃精品视频在线| 国产jizzjizz一区二区| 欧美日韩国产美| 国产视频一区在线播放| 无吗不卡中文字幕| 成人app软件下载大全免费| 欧美一区二区福利在线| 国产精品久久久久毛片软件| 丝袜亚洲另类丝袜在线| 波波电影院一区二区三区| 日韩一区二区不卡| 一区二区三区在线高清| 九色综合狠狠综合久久| 欧美亚洲国产一区二区三区va| 久久久久久久网| 蜜桃视频在线一区| 日本道在线观看一区二区| 久久久久久久综合日本| 五月婷婷综合在线| 91视视频在线直接观看在线看网页在线看| 91精品在线免费观看| 亚洲综合丝袜美腿| 成人黄色小视频在线观看| 精品国产第一区二区三区观看体验| 亚洲综合999| 成a人片国产精品| 国产亚洲欧美色| 久久草av在线| 欧美一级二级三级蜜桃| 亚洲国产一区二区三区青草影视| 99国产精品视频免费观看| 国产亚洲欧美一级| 国产伦精品一区二区三区在线观看| 69av一区二区三区| 亚洲综合一区在线| 99久久久无码国产精品| 国产精品系列在线| 粗大黑人巨茎大战欧美成人| ww亚洲ww在线观看国产| 久久成人精品无人区| 精品久久一区二区| 黄色日韩网站视频| 欧美v国产在线一区二区三区| 日韩精品欧美精品| 欧美一二区视频| 免费观看在线综合色| 日韩一区二区在线观看视频 | 日韩欧美精品在线视频| 亚洲成av人片在线观看无码|