C/C++
文章平均质量分 82
章志强
资深软件工程师,C/C++全栈技术专家,证券金融科技行业专家,mdb、zqdb、mytrader作者
展开
-
ZQDB证券金融科技行业专业的行情分析、逻辑处理和交易执行框架。
ZQDB证券金融科技行业专业的行情分析、逻辑处理和交易执行框架。无论是个人、团队、或是证券/期货/银行/私募/公募等企业,都能够基于ZQDB搭建自有的证券分析交易系统。为什么需要ZQDBZQDB可以做什么ZQDB是怎样做的软件架构ZQDB是一款高性能行情交易分析框架。ZQDB支持全方位的定制:三方接入模块化定制,支持用户根据自身需要自定义开发三方接入模块,从而实现行情实时展示、历史明细、K线管理,实现交易执行、用户管理,以及自定义数据读写管理等 计算模块定制,Z原创 2021-10-14 11:00:03 · 1202 阅读 · 0 评论 -
Python调用C++函数(SWIG,VS2013使用numpy.i完成Numpy与C++数组转换)
最近尝试使用Python调用C++函数,发现网上都是一些简单的例子,涉及到Python Numpy数组与C++数组转换的例子比较少,所以花费了一些时间,搞懂了SWIG使用numpy.i接口文件完成Numpy与C++数组转换。相比于其它几种方式,使用SWIG接口文件编写比较简单,编译也很方便,主要是不太好调试,因为是编译成.dll或者.so才能在Python中调用。1.安装SWIGwindows:官网下载,解压到D盘,将swig.exe所在文件夹添加到系统路径,如:D:\swigwin-3.0.12\...转载 2020-06-24 12:29:29 · 709 阅读 · 0 评论 -
无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用
一,问题描述MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用Debug/jk.exe : fatal error LNK1120: 1 个无法解析的外部命令error LNK2001: unresolved external symbol _W原创 2012-03-13 20:51:38 · 800 阅读 · 0 评论 -
WIN7下使用TD测试
win7下使用IE9的话,默认使用TD是不可以的,可以使用下面的方法解决:1、在TD页面下载TD客户端安装2、安装第三方的基于IE的浏览器3、使用第三方的浏览器访问TD一切就OK了。原创 2012-03-19 13:07:15 · 697 阅读 · 0 评论 -
VC2005/VS2005 VC2008/VS2008 发布软件 部署问题解决
网上有很多解决VS2005/2008的发布时,如何带上运行时库的问题,但是就算你按着网上的说法按部就班的做的话,也一定能够成功。 我在发布软件的时候,也遇到这样的问题,我是这样解决的: 1、首先了解VS2005/2008的运行时库加载机制:这是别人收集的资料2、了解了运行时库加载机制后,我把我拥VS编译的所有DLL和EXE都编译成不嵌入清单的文件3、打开DLL或者EXE的.原创 2012-04-05 14:28:45 · 1563 阅读 · 0 评论 -
Chunked 编码 解码
/*进行Chunked编码传输的HTTP Response会在消息头部设置:Transfer-Encoding: chunked表示Body将用Chunked编码传输内容Chunked编码使用若干个Chunk串连而成,由一个标明长度为0的chunk标示结束;每个Chunk分为头部和正文两部分: 头部内容指定下一段正文的字符总数(十六进制的数字)和数量单位(一般不写) 正文部原创 2012-04-09 17:20:30 · 3301 阅读 · 0 评论 -
这里是我以前的BLOG,CSDN密码忘记了,现在转过来!
http://blog.csdn.net/BEYOND_Q这里是以前写的BLOG,初出茅庐,文章不是很好,多有见笑,但是当时只有那个水平,能有心事写下来,也是不错的了。Visual Studio快捷键Windows键盘快捷键windows运行命令详解VC中#pragma小结遍历文件目录原创 2012-04-09 20:30:15 · 1597 阅读 · 0 评论 -
允许低等级权限程序发消息给高权限窗口
允许低等级权限程序发消息给高权限窗口 //ChangeWindowMessageFilterEx()对特定窗口的特殊定制 //ChangeWindowMessageFilter(WM_USER, MSGFLT_ADD); typedef BOOL (WINAPI FAR *pfnChangeWindowMessageFilter)(UINT,DWORD); pfnCh原创 2012-04-11 20:14:06 · 1863 阅读 · 0 评论 -
WIN7兼容编程
实现兼容 数据重定向高 DPI安装程序检测会话 0 隔离用户界面特权隔离版本检查原创 2012-04-13 16:06:38 · 992 阅读 · 0 评论 -
VC中 #pragma 小结
一:#pragma warning指令该指令允许有选择性的修改编译器的警告消息的行为指令格式如下:#pragma warning( warning-specifier : warning-number-list [; warning-specifier : warning-number-list...]#pragma warning( push[ ,n ] )#pragma w转载 2012-04-15 15:02:15 · 912 阅读 · 0 评论 -
Ascii Unicode Mbcs Utf8 Charset Encoding Codepage Font
ANSI/ASCII :由美国国家标准委员会指定的是基于拉丁字母的一套电脑编码系统。它主要用于显示现代英语和其他西欧语言。它是现今最通用的单字节编码系统,并等同于国际标准ISO 646 。MBCS : 多字节字符集,是一种替代 Unicode 以支持无法用单字节表示的字符集(如日文和中文)的方法。为国际市场编程时应考虑使用 Unicode 或 MBCS,或使程序能够通过更改开关来生成支持两转载 2012-04-15 15:00:37 · 753 阅读 · 0 评论 -
Win32 路径/目录/PATH/处理相关函数
头文件:WinBase.hCreateDirectory、CreateDirectoryEx 功能:创建一个新目录 GetCurrentDirectory功能: 得到当前目录,并放到缓冲区里GetDiskFreeSpace、GetDiskFreeSpaceEx功能: 获取与一个磁盘的组织有关的信息,以及了解剩余空间的容量GetDriveType功能:判断一个磁盘驱动转载 2012-04-15 15:04:38 · 1929 阅读 · 0 评论 -
Windows 消息综述/WM_USER/WM_APP
windows message :Range Description From 0 through WM_USER –1 Messages reserved for use by the system. From WM_USER through 0x7FFF Integer messages for use by private window classes. WM_APP through原创 2012-04-20 11:17:39 · 1473 阅读 · 0 评论 -
字符分类 ASCII码表
字符分类API:TCHAR CHAR WCHAR_istascii __isascii __iswascii 返回非0表示是ASCII字符_istcntrl iscntrl iswcntrl 返回非0表示是控制字符 (0x00 – 0x1F or 0x7F). _istgraph isgraph iswg原创 2012-05-09 15:38:00 · 1513 阅读 · 0 评论 -
STL算法总结
//一下代码都是演示使用,没有具体测试,使用时请查阅MSDN等相关资料。 #include #include using namespace std;bool equal1 (int x){ return x == 5;}bool equal2 (int x, int y){ return x * 2 == y;}bool lesser(int原创 2012-06-13 15:39:04 · 736 阅读 · 0 评论 -
剪贴板操作——设置获取文本/UNICODE文本/HTML/BITMAP等等 监视剪贴板 保存BITMAP到文件
/*CloseClipboard 关闭剪贴板. CountClipboardFormats 统计在当前剪贴板里有多少剪贴板格式. EmptyClipboard 清除剪贴板【必须在OpenClipboard之后调用】. EnumClipboardFormats 枚举当前剪贴板里可用的剪贴板格式. GetClipboardData 取当前剪贴板里德指定剪贴板格式的剪贴板内容.原创 2012-06-15 15:05:20 · 2276 阅读 · 0 评论 -
OLE Drap/Drop(1)
OLE Drap/Drop(1)( 转)OLE Drap/Drop(1) 转自:http://www.handytech.cn/main/ArticleShow.asp?ArtID=244该指南的目的在于读者能够在他们自己的程序实现完整的拖拽功能。自Window95以来,Drag和Drop已经成为Window程序的一个标准功能,随着COM和OLE成为主流技术,程序能和Windo转载 2012-06-17 09:26:39 · 1131 阅读 · 0 评论 -
OLE Drap/Drop(2)
OLE Drap/Drop(2)(转)OLE Drap/Drop(2) 欢迎来到OLE拖放指南第二部分;本部分的目的在于解释在OLE环境中,程序之间怎么样表示和传输数据。OLE数据传输的核心是IDataObject COM接口,一个IDataObject提供从一个程序到另一个程序传输和访问数据的方法。最通用的OLE数据传输是窗口粘贴板,当然也有拖放。IDataObject是转载 2012-06-17 09:27:12 · 716 阅读 · 0 评论 -
OLE Drap/Drop(3)
OLE Drap/Drop(3) (转)OLE Drap/Drop(3) 上一张我们着重介绍了怎么样使用OLE和IDataObject来访问windows粘贴板。本章主要实现一个IDataObject接口,然后使用我们完成的数据对象来存储文本“Hello World”到粘贴板中。创建一个COM接口-IDataObject为了创建一个COM对象,我们需要定义一个实现所有这转载 2012-06-17 09:30:54 · 1082 阅读 · 0 评论 -
OLE Drap/Drop(5)
OLE Drap/Drop(5) (转)OLE Drap/Drop(5) 欢迎来到OLE拖放旅程系列的第五部分,我们机会到了OLE拖放实现的最后阶段,现在需要做的事情就是实现IDropSource和IDropTarget接口;一般我们完成这些,我们就可以在任何程序中添加拖放操作了。本部分的目的在于实现一个用作拖放源的简单程序,它不能接收任何拖放的数据,但这不要紧,因为我转载 2012-06-17 09:39:51 · 742 阅读 · 0 评论 -
OLE Drap/Drop(6)
OLE Drap/Drop(6)OLE Drap/Drop(6) (转)OLE Drap/Drop(6) 欢迎你到OLE拖放操作的第六章!这里将着重于一个实现了drop-target的小程序,这就意味着我们的程序能够接收拖到它上面的对象(文件、图片、文本)了。我们实现一个IDropTarget的COM接口允许OLE程序拖动数据到我们的程序上;这里仅仅是一个简单的EDIT控件转载 2012-06-17 09:40:43 · 1043 阅读 · 0 评论 -
OLE Drap/Drop(4)
OLE Drap/Drop(4) (转)OLE Drap/Drop(4) 本章注重于实现一个暴露IEnumFORMATETC接口的COM对象,这里有两部分代码可以下载。第一包含一个完整的通用的IEnumFORMATETC实现,你可以将它用到你的程序中。另一部分代码是一个叫做IDataObject Viewer的所有代码。这是PlatformSDK同名程序的替代品,它是一个怎么样转载 2012-06-17 09:32:52 · 681 阅读 · 0 评论 -
使用GDI+保存BITMAP到文件
//使用GDI+保存BITMAP到文件//CLSID encoderClsid//GetEncoderClsid(L"image/png", &encoderClsid); //png//GetEncoderClsid(L"image/bmp", &encoderClsid);//GetEncoderClsid(L"image/gif", &encoderClsid);/原创 2012-06-18 09:43:26 · 4124 阅读 · 0 评论 -
COM返回值HRESULT\SCODE
////////////////////////////////////// //// COM Error Codes //// ////////////////////////////////////////// The原创 2012-07-10 14:12:53 · 1519 阅读 · 0 评论 -
Goto 2.12.07.29发布
Goto专业的搜索引擎,发布新版本了,点击此处下载本次发布:1、修改了上一版本的BUG2、更新了文件搜索引擎的底层结构,提高了文件搜索效率和速度,速度提升%30左右。3、增加Goto助手功能:比如:以管理员方式打开程序、文档、以及各类文件等【在WIN7下特别有用,简直就是神一样的功能】,在任意目录下打开CMD窗口,复制文件/文件夹路径等常用功能。4、5、6、原创 2012-07-29 15:23:08 · 786 阅读 · 0 评论 -
使用GetIfTable获取MIB_IFTABLE和MIB_IFROW获取网络接口信息
#include #pragma comment ( lib, "iphlpapi.lib")使用GetIfTable()获取各个端口信息的时候用到的 _MIB_IFTABLE结构:typedef struct _MIB_IFTABLE { DWORD dwNumEntries; //得到的端口个数 MIB_IFROW table[ANY_SIZE]; /转载 2012-10-19 15:15:23 · 9932 阅读 · 0 评论 -
Goto 桌面搜索2.12.11.4
Goto专业的搜索引擎,发布新版本了,点击此处下载本次发布:1、修改了上一版本的BUG2、更新了文件搜索引擎校验清理逻辑3、增加Goto助手功能:发送到开始快捷方式,这样用户可以把自己常用的程序、文档等各种文件放到开始搜索里去,然后就可以使用开始搜索快速定位这些文件了4、增加透明度支持5、增加自定义背景图片6、原创 2012-11-04 17:17:46 · 790 阅读 · 0 评论 -
C++11的语法新特性
从C++出来到现在已经13年了。Bjarne Stroustrup(C++的创造者)最近评价C++11:”感觉像个新的语言“。事实上,C++11核心已经发生了很重大的变化:1. 支持Lambda表达式( lambda expressions)2. 对象自动类型推导(automatic type deduction of objects)3. 统一初始化语法(uniform in转载 2012-11-25 13:36:05 · 2375 阅读 · 0 评论 -
C++中使用Lua脚本 和lua中调用c的方法
参考http://blog.csdn.net/kun1234567/archive/2007/12/11/1929815.aspx第1步:下载从官方主页www.lua.org下载Lua源代码,最新版本为5.1.3。解压之后找到“[Lua]/src”文件夹,这里面就是Lua了,不过还不能直接使用。第2步:编译lua使用任意ANSI C编译器,在这里使用VS2005编译LUA。转载 2013-01-14 09:55:47 · 705 阅读 · 0 评论 -
COOKIE格式与读写相关
1、Cookie文件的实质Cookie实际上是Web服务端与客户端(典型的是浏览器)交互时彼此传递的一部分内容,内容可以是任意的,但要在允许的长度范围之内。客户端会将它保存在本地机器上(如IE便会保存在本地的一个txt文件中),由客户端程序对其进行管理,过期的Cookie会自动删除。每当客户端访问某个域下某个目录中的网页时,便会将保存在本地并且属于那个域下对应目录的有效Cookie信息转载 2013-01-29 16:02:16 · 971 阅读 · 0 评论 -
VC编译错误总结
1. 'nasm' 不是内部或外部命令,也不是可运行的程序解决:下载nasmw.exe,改名nasm.exe,放置D:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\bin目录下2.vs2005,VS2008[缺少“;”(在标识符“PVOID64”的前面)] 解决方法转自http://bbs.gameres.com/show转载 2013-01-30 14:05:07 · 1274 阅读 · 0 评论 -
判断IE WEBBROWSER IHTMLDocument2 是否用户正在编辑
BOOL IsActiveElementEdit(CComQIPtr& spDocument){ BOOL bEditMode = FALSE; if(spDocument) { /*BSTR p = NULL; spDocument->get_designMode(&p); CString strDesignMode = p; if(strDesignMo原创 2013-01-31 13:35:24 · 1065 阅读 · 0 评论 -
IE WebBrowser 深度复制拷贝/三种遍历IFRAME方式
使用方式:if (m_pBrowserApp != NULL) { HRESULT hr; LPDISPATCH lpDisp = GetHtmlDocument(); if (lpDisp != NULL) { CComPtr spDocument; hr = lpDisp->QueryInterface(IID_IHTMLDocument2, (原创 2012-06-11 14:14:14 · 2657 阅读 · 0 评论 -
VC删除IE缓存、COOKIE及记录
用完计算机之后,往往不希望别人发现你做过什么,和浏览过什么网址。(特别是和多人共用一台机子时)。当然,你可以手工清理那些记录。 但那是多么繁杂的一件事啊。 我想没人愿意那样做。于是,我想到用一个软件来一次性完成上述工作。 清除历史记录的文章很多,但是一般都不够全面。本人经过整理和收集一些资料,加以融合。得到了一个较全面的历史记录清除方法。 在这里要指出代码能完成,要特别感谢转载 2013-01-29 16:00:36 · 1062 阅读 · 0 评论 -
相对路径和相对路径转换
/*相对路径到绝对路径PathCombinePathResolve绝对路径到相对路径PathRelativePathTo*/BOOL RelativePathToPath(LPTSTR lpszPath, LPCTSTR lpszWorkDir){LPCWSTR pszDirs[] = {lpszWorkDir, NULL};if(PathResolve(l原创 2013-02-04 10:30:29 · 1435 阅读 · 0 评论 -
vs2008中tesseract配置
tesseract SVN:http://tesseract-ocr.googlecode.com/svn/trunk下载好tesseract 后,找到vs2008目录,编译,发现 allheader.h 这个文件没有,这是因为tesseract依赖leptonica所以到http://www.leptonica.com/下载leptonica库就可以了leptonica-原创 2013-02-05 15:35:19 · 2494 阅读 · 0 评论 -
TW_OCR32调用
TW_OCR32.dll下载//回调函数long FAR PASCAL ProgressStart(){return 1;}long FAR PASCAL ProgressEnd(){return 1;}long FAR PASCAL ProgressSetStage(int wStageNumber, byte& Name)原创 2013-02-07 13:10:53 · 3054 阅读 · 2 评论 -
网页自动点击软件
网页自动点击软件下载:网页自动点击软件目录下有一个webapp.xml,使用时可以修改该配置来模拟网页自动点击功能autoclick 的属性 enable表示启用还是禁用自动点击autoclick 的属性 timeout 每隔多少秒,切换下一个websiteautoclick 的属性 loop表原创 2013-02-04 20:31:42 · 2168 阅读 · 0 评论 -
ATL3.0中的窗口类
内容太多,这里贴下地址:http://vckbase.com/index.php/wv/854转载 2013-03-02 14:06:47 · 686 阅读 · 0 评论 -
JS脚本使用RAR制作安装包
本文针对使用RAR自解压程序制作安装包:(只需将下面的代码保存成.js结尾的js脚本就可以使用了)////创建ws对象 可以取得当前脚本所在路径,执行命令、程序等var ws = new ActiveXObject("wscript.shell");//创建fso对象 可以遍历目录、读写文件、复制移动文件等var fso = new ActiveXObject("Scr原创 2013-04-10 15:09:44 · 1686 阅读 · 0 评论