文洲的专栏

对昨天不后悔,对今天不生气,对明天不担忧,对睡眠不轻视,对运动不排斥,爱自己,拥抱生活!...

排序:
默认
按更新时间
按访问量

java客户端和GO服务端联调错误

最近遇到一个bug很有意思,java客户端加密后传给服务端,服务端是GO Listen请求后解密处理,但是服务端解密失败。排查过程如下:1.首先请求过程中有中间服务器转发,因此猜想可能是转发数据错误。由于发送数据为二进制流,因此对比客户端发送时与服务端接收到的数据的md5和base64,一致,排除...

2018-06-04 20:51:38

阅读数:11

评论数:0

x86上包含__in64类型的结构体数组反汇编跟踪

演示x86上包含__in64类型的结构体数组反汇编跟踪过程,供参考。

2017-11-29 22:14:00

阅读数:105

评论数:0

vector resize失败导致下标越界

介绍一种resize失败导致vector下标越界的场景,供参考。

2017-11-29 21:19:14

阅读数:344

评论数:0

sfc.dll丢失导致dll加载失败

同事测试时发现界面有个模块始终无法显示,使用Process Explorer查看发现对应dll没有加载,详细叙述了定位问题的过程和方法,供借鉴。

2017-11-29 20:51:55

阅读数:132

评论数:0

23.WebBrowser 高级特性调整

前面讲解了IE控件的常用方法,本节主要讨论如何调整WebBrowser 高级特性来完成我们想要的效果。本文演示如何禁用WebBrowser右键菜单,如何禁用3D边缘和滚动条,以及如何处理js错误通知,js错误通知封装成类,可以满足实际生产使用需求。

2017-11-02 12:27:02

阅读数:416

评论数:0

22.WebBrowser中JS和C++代码互相调用

WebBrowser内嵌的网页中JS与本地C++代码可以相互调用,这样就可以最大程度利用C++强大的计算能力和与本地硬件通信。本文详细演示了JS和C++代码互相调用的方法,JS调用C++的类独立封装可直接修改使用。

2017-10-22 16:53:16

阅读数:776

评论数:0

21. IE WebBrowser控件的基本使用

综合使用COM的自动化接口、连接点最好的例子就是IE WebBrowser控件,这也是最常用的一个COM控件,借助它我们可以用网页编写界面、调用本地代码,也就是当前流行的混合式程序。本文详述了IE控件的基本使用,包括静态创建、动态创建和事件响应,并对创建过程的atl代码进行剖析,清楚的画出了整个创...

2017-10-22 11:17:03

阅读数:348

评论数:0

3. GDI+ Bitmap和GDI HBITMAP互转

本文详细的讲解了带透明度的HBITMAP和Bitmap的转换,解决常见的Bitmap转HBITMAP背景变浅,HBITMAP转Bitmap背景变黑的问题,并演示了如何输出HBITMAP和Bitmap的每行像素,所有代码封装成了类,可以直接在生产环境中使用。

2017-10-21 15:05:35

阅读数:1739

评论数:0

2. GDI+图像的加载和保存

GDI只提供了加载和保存BMP图像的方法,对于现代化UI显示显然是不够的。GDI+提供了常用图像格式(BMP/TIFF/JPG/PNG/GIF等)的加载和保存,基于编码器/解码器的设计有利于进一步扩展,但是也存在一些坑,本文就这些加以详细说明,并给出一个封装类,可用于实际生产环境使用。

2017-10-17 21:45:51

阅读数:224

评论数:0

1.GDI+ 常用方法详解

作为Windows图形系统基准的GDI存在诸多不足:Alpha通道支持较弱,不支持高级图像功能,抗锯齿能力差等等。为了解决这鞋问题,微软推出GDI+,使用非常方便,满足大多数场合需求。本文演示了常见GDI+函数使用。

2017-10-15 20:30:36

阅读数:288

评论数:0

Windows平板 区分当前是鼠标点击还是触摸

演示如何在鼠标响应详细中判断当前用户是通过鼠标点击还是通过触摸完成当前动作,据此可以最大程度兼容传统Windows程序,同时保证触摸体验效果。

2017-10-15 18:31:53

阅读数:507

评论数:0

C++ 11 thread静态链接getlogicalprocessorinformation导致错误

Windows中C++ 11 thread类静态链接getlogicalprocessorinformation导致在XP SP2之前报找不到定位点的错误,本文详细描述了定位这一问题的过程。

2017-10-15 18:00:45

阅读数:154

评论数:0

py2exe打包pyside项目时出错

py2exe打包pyside项目时出错,备忘供参考

2017-09-20 13:43:37

阅读数:206

评论数:0

14.说说ATL常用包装类的用法和坑

ATL提供了很多复杂数据类型的包装类,使用这些包装类可以大大减小开发工作量,但是他们使用起来也有许多坑,需要注意,本文就ATL常用包装类的用法和坑详细说明,力图说明产生这些坑的原因和使用注意事项。

2017-08-13 09:17:39

阅读数:449

评论数:0

13.浅析COM多线程

ATL一节已经接触过多线程一词,COM为了解决多线程问题的思路如下: 1.支持传统多线程访问,组件编写时处理多线程访问(MTA) 2.支持隐藏多线程细节,组件编写时无需多线程访问(STA) 前者是为了灵活,后者是为了方便和兼容,我们从这两点展开来说。 1.套间分类 COM引入一个概念——套间(...

2017-08-13 09:17:02

阅读数:436

评论数:0

12.编写COM进程外组件

相比进程内组件,进程外组件的编写较为麻烦,在前面已经讲的IDL和进程外组件原理基础上,本节以一个简单实例讲解进程外组件的编写步骤和注意事项。

2017-07-30 16:29:30

阅读数:1095

评论数:4

11.编写COM常用IDL指令和注意事项详解

之前讲的COM都是手动编写的,上一节讲到借助MFC和下一节要讲到的ATL这些框架可以大大减少代码编写量,然而这还不够,还是太麻烦,因为COM遵循一套标准的规则,因此微软推荐通过编写IDL的方法来编写COM,使用IDL描述我们想要的COM形式和结构,然后由工具来做实际编写工作。

2017-07-30 15:24:09

阅读数:814

评论数:0

10.COM进程外组件和列集、散集

前面讲的都是进程内组件,实际上COM是进程透明的,就是使用COM的时候,不管当前连接的是进程内组件还是进程外组件,使用方法一样,所有的差异都被COM中间屏蔽了。这一节详细讲解COM进程外组件的列集/散集过程和连接建立过程。

2017-07-30 15:22:49

阅读数:1064

评论数:0

9.COM中特殊类型和相关函数

COM中包含特殊类型数据,他们大大方便了COM使用,解决了很多问题,但是也埋下了许多坑,这里详细介绍相关类型和他们的使用注意事项。

2017-07-30 15:21:57

阅读数:296

评论数:0

3.COM使用实例——快捷方式创建和解析

上节介绍如何编写最简单的COM,本节通过[快捷方式创建和解析]看下如何使用COM调用Windows相关功能。

2017-06-15 13:04:14

阅读数:760

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭