
VC
lazyclough
我见青山多妩媚,料青山见我应如是。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
vc2019/2022集成openssl加解密编程
在visual studio中使用openssl进行信息安全编程原创 2022-09-26 23:32:06 · 1453 阅读 · 0 评论 -
编写安全的代码(ACL使用方法)
http://www.lihuasoft.net/article/show.php?id=755 Windows NT/2K/XP版本的操作系统都支持NTFS格式的文件系统,这是一个有安全性质的文件系统,你可以通过Windows的资源管理器来设置对每个目录和文件的用户访问转载 2011-10-03 13:41:38 · 3241 阅读 · 0 评论 -
vs2010添加TSTCON( ActiveX Control Test Container )工具
vs2010中的TSTCON( ActiveX Control Test Container )工具非自动安装,而是作为一个例程提供。所以应找到该例程,并编译:如vs2010安装在默认路径则1, 进入:C:\Program Files\Microsoft Visual Studio 10.0\Samples\1033,可找到VC2010Samples.zip文件,2, 将其解决到同一个原创 2012-04-26 11:32:35 · 6438 阅读 · 1 评论 -
vs2010 vc nmake编译openssl-0.9.8e
《vs2010 vc nmake编译openssl-0.9.8e》一,下载ActivePerl window安装程序下载:http://downloads.activestate.com/ActivePerl/openSSL源码下载:http://www.openssl.org/source/二, 安装ActivePerl三, 解压openssl-0.9.8e.tar.gz至c原创 2012-04-13 00:19:29 · 3786 阅读 · 0 评论 -
vc2010多线程使用std标准模板库容器DEBUG版迭代器BUG
在vc2010多线程环境下使用std标准模板库容器 list 时, 如果是DEBUG版本, 迭代器存在BUG在文件中,以下代码块会出现非法访问错,实际上是在子线程中调用list的begin()方法返回迭代器时更改了 _Pnext 所指内存块的值。#if _ITERATOR_DEBUG_LEVEL == 2 void _Orphan_ptr(_Myt& _Cont, _N原创 2012-05-08 20:40:26 · 3661 阅读 · 1 评论 -
vc 2010 无法输出中文
解决办法:程序开始时先调用:_tsetlocale(LC_ALL, _T("chs"));原创 2012-05-08 21:28:06 · 1729 阅读 · 1 评论 -
OpenSSL中读取PEM文件的问题
openssl genrsa -out private.key 1024openssl rsa -in private.key -pubout -out public.key BIO *key= NULL; RSA *r= NULL; key = BIO_new(BIO_s_file()); BIO_r转载 2012-06-08 21:11:47 · 32107 阅读 · 3 评论 -
utf8编码-汉字几字节
UTF-8 编码字符理论上可以最多到 6个字节长,但目前全世界的所有文字和符号种类加起来也只要编到 4个字节长就够了。UTF-8 是以 8位(即 1个字节)为单元对原始码进行编码(注意一 点:这里所讲的原始码都是指Unicode码),并规定:多字节码(2个字 节以上才称为多字节)以转换后第1个字节起头的连续“1”的数目(这 些连续“1”称为标记位),表示转换成几个字节:“110”连续两个 “1”,原创 2012-06-26 10:14:15 · 15564 阅读 · 1 评论 -
vs2010 ATL创建windows服务程序
1,new project -> 选择 ATL Project, 设置工程名,如:PureSsl2,在向导的“Application Setting”页,“Application Type”项选择: Service(EXE)3, 更改主文件PureSsl.cpp,如下: // PureSsl.cpp : Implementation of WinMain#include原创 2012-10-04 17:30:15 · 12099 阅读 · 5 评论 -
设备驱动程序INF文件——INF文件的节
见: http://blog.youkuaiyun.com/augusdi/article/details/4192588转载 2012-10-17 16:30:57 · 973 阅读 · 0 评论 -
在Dll中创建对话框并调用
1、第一步创建一“MFC AppWizard (dll)”工程,接下来选择“Regular Dll using shared MFC DLL”,点击“Finish”。2、添加一对话框资源到工程中,从菜单中选择Insert->Resource,添加一“Dialog”选择“New”,至此对话框已添加到DLL工程中。 3、为对话框添加一新类,如:CTest,基类为CDialog。 4、在转载 2012-10-27 00:44:36 · 1310 阅读 · 0 评论 -
虚拟打印机开发日志(一):使用x64 WIN7编译环境编译的完整步骤
使用MS提供的MSPLOT驱动源文件,可方便地进行自用的打印机驱动开发或虚拟打印机驱动的开发,以下是一个最简的完整的使用DDK编译MSPLOT打印驱动的步骤:1、编译对应的工具(64bit驱动)打开DDK的Win7 x64 Checked Build Environment定位至:D:\WinDDK\7600.16385.1\src\print\msplot ,输入命令build转载 2012-11-08 23:17:15 · 3640 阅读 · 1 评论 -
关于IOCP完成端口的文章
http://www.cnblogs.com/ayanmw/archive/2012/10/11/2720393.htmlhttp://blog.youkuaiyun.com/piggyxp/article/details/6922277原创 2013-12-01 19:54:53 · 827 阅读 · 0 评论 -
VC(MFC、ATL)中 得到2个SYSTEMTIME时间差
第一种方法:CTime 和CTimeSpan ,例如: // example for CTime::operator +, - CTime t1( 1999, 3, 19, 22, 15, 0 ); // 10:15PM March 19, 1999 CTime转载 2011-10-02 17:58:48 · 2341 阅读 · 0 评论 -
VS2005 ATL WINDOWS服务感想
最近写的WINDOWS 服务,以前用VC6写过简单的服务。VC6 带的ATL 创建服务后,会生成一个继承于CcomModule 的类,并覆盖了START、STOP等(不记得了),只需在START、STOP里写相应的代码就行了。现在已用VS2005,当然不用VC6了,VC8中的服务项目是基于.NET的,考虑.NET的性能对服务不合适,还是选择ATL8。但创建完项目就发现生成的类除了安全检测外什么也没转载 2011-06-27 21:33:00 · 919 阅读 · 0 评论 -
用 VC++ 2008 编写 Windows Service(系统服务)
用 VC++ 2008 编写 Windows Service(系统服务)2008-03-30 08:08现在许多 Windows Service 应用都可以用 c# 很好的完成,不过毕竟是托管代码,性能上不及非托管的 VC。网上能找到的 VC 写系统服务的例子,多数都用的 VC6(ATL3.0)。ATL3.0 写系统服务也很不错,只是封装的不很完善,还需要用户写不少代码。ATL7.0 及后续带的系转载 2011-06-27 21:28:00 · 1019 阅读 · 0 评论 -
VC DLL
Visual C++ 5.0支持多种DLL,包括:非MFC DLL 静态链接到MFC的常规DLL 动态链接到MFC的常规DLL MFC扩展DLL 其中非MFC DLL(non-MFC DLL)内部不使用MFC,调用非MFC DLL提供的导出函数的可执行程序可以使用MFC,也可以不使用MFC。一般来说,非MFC DLL的导出函数都使用标准的C接口(standard C interface)。 其余三转载 2009-03-14 11:48:00 · 608 阅读 · 0 评论 -
WIN32下(非MFC)自编TRACE
void WINAPI TRACE(LPCSTR format, ...) { char buffer[1024]; va_list arglist; va_start (arglist,format); vsprintf(buffer, format, arglist);原创 2009-03-15 10:03:00 · 576 阅读 · 0 评论 -
在DLL中使用资源
现在最常看见的关于DLL的问题就是如何在DLL中使用对话框,这是一个很普遍的关于如何在DLL中使用资源的问题。这里我们从Win32 DLL和MFC DLL两个方面来分析并解决这个问题。 1.Win32 DLL 在Win32 DLL中使用对话框很简单,你只需要在你的DLL中添加对话框资源,而且可以在对话框上面设置你所需要的控件。然后使用DialogBox或者CreateDialog这转载 2009-03-15 10:24:00 · 697 阅读 · 0 评论 -
ANSI, UNICODE与UTF8相互转换模板类
在WIN32开发过程中经常需要在不同的字符集之间进行转换,这可以通过WIN32 API函数WideCharToMultiByte和MultiByteToWideChar来完成,但转换过程涉及空间的分配与回收问题,直接调用API稍显麻烦,故在此将字符集转换功能封装到一个模板类中,以简化转换过程。该类代码如下: /***************************************原创 2009-03-23 19:06:00 · 1176 阅读 · 2 评论 -
mfc工程中添加com接口支持
在普通的mfc工程中常常需要添加com接口支持.最典型的应用就是使用com中的连接点机制时,需要在客户端实现事件接受器.简单说来,就是要实现在com服务器端声明的事件接口.这个接口由server端暴露给client,然后由client实现之,并在适当的时候由server端触发事件达到通知client的目的.这个过程就是连接点的回调. 支持IDispatch的接口,就是通常所说的双接口.支持I转载 2009-03-27 00:41:00 · 5055 阅读 · 0 评论 -
事件接收器的实现
方法一: 使用MFC映射宏,使用 CCmdTartget 子类为EventSink类 .H文件 1. DECLARE_DISPATCH_MAP() 2. DECLARE_INTERFACE_MAP() .CPP文件 1. BEGIN_DISPATCH_MAP(当前类, 父类) //实现本地函数与组件中的函数映射 DISP_FUNCTION_ID(转载 2009-03-27 01:11:00 · 1358 阅读 · 0 评论 -
BSTR、char*和CString转换
(1) char*转换成CString 若将char*转换成CString,除了直接赋值外,还可使用CString::Format进行。例如:char chArray[] = "This is a test"; char * p = "This is a test"; 或LPSTR p = "This is a test"; 或在已定义Unicode应的用程序中转载 2009-03-27 15:04:00 · 526 阅读 · 0 评论 -
字符串转换 - 应该熟练掌握的东西
一、其它数据类型转换为字符串短整型(int)itoa(i,temp,10);///将i转换为字符串放入temp中,最后一个数字表示十进制itoa(i,temp,2); ///按二进制方式转换 长整型(long)ltoa(l,temp,10); 浮点数(float,double)用fcvt可以完成转换,这是MSDN中的例子:int decimal, sign;char *buff转载 2009-03-27 16:04:00 · 680 阅读 · 0 评论 -
vc2008中使用boost库
本文介绍使用boost库正则表达式来解决字符匹配、搜索、替换等应用。现在介绍一下VC2008中怎样配置与使用boost库正则表达式。1、下载与安装boost库,下载地址:http://sourceforge.net/projects/boost/files/boost/1.39.0/,将其解压到E:/boost目录。有关boost的使用可以参考http://www.stlchina.org转载 2010-02-01 23:57:00 · 3575 阅读 · 0 评论 -
如何让API回调你的VC类成员函数而不是静态函数
首先需要包含一个由yzwykkldczsh同志编写的模板类-----万能多用自适应无限制回调模板(为纪念友人fishskin,此模板又称为H>W模板) <br />/**************************************************************************<br /> * ACCallback.h<br /> * Helper class of Member function callback mechanism<br /> ********转载 2010-08-22 09:25:00 · 1037 阅读 · 0 评论 -
SQLite VC环境搭建
第一步:进入到SQLite的官网下载sqlite-amalgamation-3_7_2和sqlitedll-3_7_2这两个文件,我使用的版本是3.7的有兴趣的朋友可以将帮助文档下载下来,里面的内容很丰富。将这两个文件下载完毕后解压。 第二步:将sqlite3.dll复制到system目录下,然后将sqlite3.def复制到VC的安装目录下的bin文件夹下。 第三步:然后在命转载 2011-06-15 00:10:00 · 938 阅读 · 0 评论 -
sqlite3 命令行简易教程
SQLite库包含一个名字叫做sqlite3的命令行,它可以让用户手工输入并执行面向SQLite数据库的SQL命令。本文档提供一个样使用sqlite3的简要说明。开始 启动sqlite3程序,仅仅需要敲入带有SQLite数据库名字的"sqlite3"命令即可。如果文件不存在,则创建一个新的(数据库)文件。然后sqlite3程序将提示你输入SQL。敲入SQL语句(以分号“;”结束)转载 2011-06-20 11:27:00 · 2510 阅读 · 0 评论 -
MSComm 控件
MSComm控件的属性(必须要熟悉的几个——CommPort:设置并返回通信端口号;Setting:以字符串的形式设置并返回数据传输速率、奇偶校验、数据比特、停止比特;PortOpen:设置并返回通信端口的状态,也可以打开和关闭端口;Input:从接收缓冲区返回和删除字符;Output:向传输缓冲区定一个字符串)1)CommPort属性void SetCommPort(short nNewValu转载 2009-03-11 22:44:00 · 779 阅读 · 0 评论