// <summary>
/// 获取市场内所有证券的数量
/// </summary>
/// <param name="Market">市场代码, 0->深圳 1->上海</param>
/// <param name="Result">此API执行返回后,Result内保存了返回的证券数量</param>
/// <param name="ErrInfo">此API执行返回后,如果出错,保存了错误信息说明。一般要分配256字节的空间。没出错时为空字符串。</param>
/// <returns>成功返货true, 失败返回false</returns>
[DllImport("TdxHqApi.dll", CharSet = CharSet.Ansi)]
[return: MarshalAs(UnmanagedType.I1)]
public static extern bool TdxL2Hq_GetSecurityCount(byte Market, ref short Result, StringBuilder ErrInfo);
StringBuilder Result = new StringBuilder(1024 * 1024);
StringBuilder ErrInfo = new StringBuilder(256);
bool bool1 = TdxL2Hq_GetSecurityCount(byte Market, ref short Result, StringBuilder ErrInfo);
if (!bool1)
{
Console.WriteLine(ErrInfo.ToString());
return;
}
Console.WriteLine(Result.ToString());
1.首先,请看你上一个问题
2.其次,Result是一个[In/Out]的Short类型,你这个StringBuilder Result = new StringBuilder(1024 * 1024);类型都不匹配
3.正确写法如下:
short Result = 0; StringBuilder ErrInfo = new StringBuilder(256); bool bool1 = TdxL2Hq_GetSecurityCount(byte Market, ref short Result, StringBuilder ErrInfo);
谢谢你,我没有太注意到这个StringBuilder Result = new StringBuilder(1024 * 1024);问题;
这个问题我也已解决好了,我可以问你下就是我现在也已经知道深市的股票数量(6550支) 获取市场内从某个位置开始的1000支股票的股票代码这样我要怎么循环?
public static extern bool TdxL2Hq_GetSecurityList(byte Market, short Start, ref short Count, StringBuilder Result, StringBuilder ErrInfo);
这个我想用多线程的来进行解决。。
@乖丫头不乖: 你Result获取到的是什么
@jello chen: 获取的股票总数
@乖丫头不乖: 我可以问你下就是我现在也已经知道深市的股票数量(6550支) 获取市场内从某个位置开始的1000支股票的股票代码这样我要怎么循环?
@乖丫头不乖: 首先,你要知道数据的首地址,然后,你要知道每条数据占几个字节
@jello chen: 你也可以看下我刚发上去的提问,就是这个问题
问题要描述清楚…