- 博客(33)
- 资源 (5)
- 收藏
- 关注
转载 VM虚拟机的配置文件(.vmx)损坏修复
VM虚拟机中使用.vmx文件保存虚拟机的所有软硬件配置,如果意外损坏的话将会出现不能正常打开虚拟机的故障,症状为:用文本查看软件打开虚拟机目录中的.vmk文件发现内容变为乱码(正常为可读文本,显示虚拟机中的配置信息)修复方法: 本方法仅适用.vmx文件损坏而其他文件完好无损的情况。 举例说明:虚拟机名为XP,虚拟机目录为E:\XP\,配置文件名即为XP.vmx(除目
2014-01-17 08:09:33
17492
转载 QueueUserAPC
QueueUserAPC QueueUserAPC The QueueUserAPCfunction adds a user-mode asynchronous procedure call QueueUserAPC函数把一个APC对象加入到指定线程的APC队列中。 (APC) object to the APC queue of
2012-06-27 09:40:09
1732
原创 关于如何编写动态链接库DLL中的导出类
要输出整个的类,对类使用_declspec(_dllexpot);要输出类的成员函数,则对该函数使用_declspec(_dllexport)。如: class AFX_EXT_CLASS CTextDoc : public CDocument { … } extern "C" AFX_EXT_API void
2008-11-19 10:37:00
3006
转载 VC实现程序开机自启动
很多监控软件要求软件能够在系统重新启动后不用用户去点击图标启动项目,而是直接能够启动运行,方法是写注册表Software//Microsoft//Windows//CurrentVersion//Run 。参考程序可以见下:(查找程序目录的执行文件,存在则进行添加注册表操作) //实用代码一int C***Dlg::CreateRun(void){//添加以下代码HKEY Re
2008-10-17 10:39:00
5112
原创 VC++ 异常处理
使用一种强制的机制保证一些致命错误能够被处理是一个明智的选择。比如说内存错,文件错等等。 在C++中引入了一种在C语言中不存在的特性,错误捕捉机制(try/catch),这是一种强制性的机制,如果程序中抛出的异常未被成功捕捉,该异常将一直会沿着函数调用的顺序上升,直到被捕捉到为止。而默认的main函数之外存在有异常捕捉代码,这段默认的异常捕捉代码将会终止程序并报告异常的发生。
2008-09-03 09:42:00
3112
原创 分割窗体 CSpiltterWnd加载控件的使用方法一
创建分割窗体:CSpiltterWnd m_cSpiltterWnd;cSpiltterWnd.CreateStatic(this, 1, 2);//单行双列型 //加入CtreeCtrlCtreeCtrl m_treeCtrl;m_treeCtrl.Create(dwStyle, CRect(), &m_cSpiltterWnd, m_cSpiltterWnd.IdFro
2008-08-06 10:41:00
671
转载 VC++界面库 - Xtreme Toolkit Pro
一套扩展MFC的界面库,可以很方便的实现各种界面风格。不过话说VC2008的MFC即将集成它竞争对手的产品BCGControl,呵呵官方网站:http://www.codejock.com/products/toolkitpro最新的11.20版本已经支持VC2008了,所以编译没有太大的问题。要注意的一点是,源文件的注释有一些非GBK字符,编译的时候命令行里最好加上/wd4819使用的时候,只
2008-07-29 08:41:00
3055
原创 CListCtrl控件SortItems函数使用方法
CListCtrl m_listCtrl;int g_listSort= 1;int g_subItem; 响应LVN_COLUMECLICKvoid CTransmitterDlg::OnLvnColumnclickHostList(NMHDR *pNMHDR, LRESULT *pResult){ LPNMLISTVIEW pNMLV = reinterpret_ca
2008-07-25 17:10:00
1112
原创 编写ActiveX控件(MFC)
1、使用向导生成ActiveX Project 2、添加自己的方法和消息影射到 XXXXCtrl.h文件中,结构是 DECLARE_DISPATCH_MAP() afx_msg void AboutBox(); afx_msg void MyMethod();
2008-07-24 11:46:00
721
原创 在ActiveX中显示图片(其他程序中通用)
CString szFilename ("c://temp//1678391_6878.bmp"); CDC *dc = GetDC(); CDC bmDC; HBITMAP hBmp = (HBITMAP)::LoadImage(NULL,szFilename,IMAGE_BITMAP,0,0,LR_LOADF
2008-07-24 11:45:00
913
转载 发布ActiveX(VS2005)
1:使用VS2005制作一个Setup wizard的项目进行打包成CAB文件 2:进入Visual Studio 2005 Command Prompt界面 3:使用makecert 创建证书文件 makecert -sk password -ss XX证书 -n CN="MFC 测试" -m 12 anson.cer
2008-07-24 11:45:00
1019
原创 MFC中静态文本框透明的方法
HBRUSH CMyUIDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); if( CTLCOLOR_STATIC == nCtlColor )
2008-07-24 11:44:00
6104
5
转载 DEBUG和RELEASE 版本差异及调试相关问题(VS - VC++)
I.内存分配问题 1.变量未初始化。下面的程序在debug中运行的很好。 thing * search(thing * something) BOOL found; for(int i = 0; i
2008-07-24 11:43:00
1723
转载 Windows 服务的Visual C++ 6.0写法
// ServiceTest.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include #ifdef _DEBUG#define new DEBUG_NEW#undef THIS_FILEstatic char THIS_FILE[] = __FILE__;#endifCWinAp
2008-07-24 11:41:00
924
转载 搭建svn://模式的svn服务器
Sunday, June 1st, 2008 svn可支持file:///、http://、https://、svn://、svn+ssh://等多种模式访问,其中file:///模式无须任何配置,http://和https://模式需要通过配置Subversion的Apache服务器的WebDAV协议实现。下面我们配置基于svn://模式的svn服务器。1. 安装svn相关的软件一
2008-07-24 11:35:00
6473
1
转载 SVN安装与配置
工具: 1. svn-1.3.0-setup.exe SVN服务端软件 2. SVNService.exe 添加到Windows服务需要的工具 3. TortoiseSVN-1.4.0.7501-win32-svn-1.4.0.msi SVN客户端软件 4. LanguagePac
2008-07-24 11:27:00
736
转载 SVN的Local方式:个人源码管理的好办法
SVN全名Subversion。SVN与CVS一样,是一个跨平台的软件,支持大多数常见的操作系统。本文只讨论Windows的情况。其官方网站是:http://subversion.tigris.org(tigris是一个和sourceforge类似的开源网站,与sf不同的是,sf提供的CVS服务,而tigris提供的是SVN服务)。在介绍SVN的应用前,先讨论一下源码管理的一个重要的基本
2008-07-24 11:24:00
591
转载 svn 服务器端安装配置
在windows下安装svn安装步骤:1 首先下载Subversion Windows版本的服务器软件,下载地址如下:http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91文件为svn-1.2.0-setup.exe,然后执行安装,安装目录如:d:/develop/subversion,然后设置一下系统的环境变量P
2008-07-24 11:02:00
725
原创 CSOCKET 中的错误值含义
sckOutOfMemory 7 内存不足 sckInvalidPropertyValue 380 属性值不效 sckGetNotSupported 394
2008-07-23 10:37:00
793
原创 在CTreeCtrl控件创建节点时添加ICON图标
类中定义:CTreeCtrl m_treeCtrl;CImageList cImageList;代码实现:HICON hIcon;CimageList.Create(16, 16, ILC_COLOR32| ILC_MASK, 4, 4);//16,16表示cImageList中图标大小,
2008-07-22 21:19:00
1756
1
原创 怎么样使用VC的TRACE宏
TRACE宏对于VC下程序调试来说是很有用的东西,有着类似printf的功能;该宏仅仅在程序的DEBUG版本中出现,当RELEASE的时候该宏就完全消息了,从而帮助你调式也在RELEASE的时候减少代码量。使用非常简单,格式如下:TRACE("DDDDDDDDDDD");temp=123;TRACE("wewe%d",temp);分别在调试窗口显示:DDDDDDDDDDD
2008-07-22 21:16:00
771
转载 VC++下编译出极小的程序.
昨天做了个telnet后门程序玩, 既然是后门嘛,自然是越小越好.可是我的VC9编译一个HelloWorld都有50K+... 动态链接到MSVCRT90.dll倒是小下来了,但是得背上一个更变态的dll(600多k) 而这个msvcrt90.dll就是我的vista sp1也不是自带的.更不便于程序的部署. 最后自己去查了查资料终于编译出体积比较满意的exe,步骤如下: 1.扔掉CRT. CR
2008-07-16 15:29:00
628
1
原创 创建一个CDialog对话框与对话框销毁
创建一个CDialog对话框CStatus* pStatus = new CStatus; pStatus->Create(IDD_STATUS_DIALOG, AfxGetMainWnd()); 或者:pStatus->DoModal(); 对话框销毁:pStatus->DestroyWindow();或者:pStatus->EndDialog();
2008-07-16 15:12:00
674
原创 关于VC时间、日期函数
MFC提供了两个日期和时间类CTime和CTimeSpan,分别代表相对时间和绝对时间。CTime是基于格林威治平均时间(GMT)的,本地的时间由环境变量TZ决定。CTimeSpan代表了时间间隔。CTime类由下列成员函数:CTime()创建一个CTime对象。GetCurrentTime()由当前时间创建一个CTime对象。GetTime()由CTime对象返回一个time_t变量。GetY
2008-07-15 09:00:00
813
原创 HTTP GET/POST请求区别
1.HTTP 定义了与服务器交互的不同方法,最基本的方法是 GET 和 POST。事实上 GET 适用于多数请求,而保留 POST 仅用于更新站点。根据 HTTP 规范,GET 用于信息获取,而且应该是 安全的和 幂等的。所谓安全的意味着该操作用于获取信息而非修改信息。换句话说,GET 请求一般不应产生副作用。幂等的意味着对同一 URL 的多个请求应该返回同样的结果。完整的定义并不像看起来那样严
2008-07-14 17:17:00
430
转载 Socket的Send,Recv的长度问题
一个包没有固定长度,以太网限制在46-1500字节,1500就是以太网的MTU,超过这个量,TCP会为IP数据报设置偏移量进行分片传输,现在一般可允许应用层设置8k(NTFS系统)的缓冲区,8k的数据由底层分片,而应用层看来只是一次发送。 windows的缓冲区经验值是4k。 Socket本身分为两种,流(TCP)和数据报(UD
2008-07-14 17:16:00
2801
1
转载 关于Debug和Release之本质区别的讨论
一、Debug 和 Release 编译方式的本质区别 Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。Release 称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用。 Debug 和 Release 的真正秘密,在于一组编译选项。下面列出了分别针对二者的选项(当然除此之外还有其他一些,如/Fd /Fo,但区别
2008-07-14 16:24:00
391
转载 程序员四大忌
一忌:轻易言败,没有自信 没有永不放弃精神的程序员,只是一个有程序员名号的假程序员。一个真正的程序员,知道在程序设计的过程中,可能会遇到不计其数的困难和问题,可能有极多的挫折和失败,而成功只有一次。 就为解决一个问题,我们可能连续十几甚至几十小时的坐在计算机前不停的工作。一个问题解决了,可能又有其它的问题出现。而你要是不能坚持下来,可能从前的一切努力都流失了。轻易言败的
2008-07-14 16:20:00
484
原创 当鼠标移动到按钮上时设置鼠标指针形状
变量:HCURSOR m_hButtonCursor;重载函数:afx_msg BOOL OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT msg);函数实现:BOOL CMyDialog::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT msg){ CString sClassName;
2008-07-11 15:44:00
2425
原创 TCP非阻塞socket编程
网络通信程序的同步方式指的是发送方不等接收方响应,便接着发下个数据包的通信方式;而异步指发送方发出数据后,等收到接收方发回的响应,才发下一个数据包的通信方式。 阻塞套接字是指执行此套接字的网络调用时,直到成功才返回,否则一直阻塞在此网络调用上,比如调用recv()函数读取网络缓冲区中的数据,如果没有数据到达,将一直挂在recv()这个函数调用上,直到读到一些数据,此函数调用才返回;而非阻塞套接字是
2008-07-11 09:19:00
4523
2
转载 Socket模型详解[转]
Winsock 的I/O操作:1、 两种I/O模式 阻塞模式:执行I/O操作完成前会一直进行等待,不会将控制权交给程序。套接字 默认为阻塞模式。可以通过多线程技术进行处理。 非阻塞模式:执行I/O操作时,Winsock函数会返回并交出控制权。这种模式使用 起来比较复杂,因为函数在没有运行完成就进行返回,会不断地返回 WSAEWOULDBLOCK错误。但功能强大。为了解决这个问题,提
2008-07-11 09:04:00
792
原创 Winsock初始化
//初始化Winsocket WSADATA wsaData; if(WSAStartup(MAKEWORD(2, 2), &wsaData )!= 0){ cout<<"initial server fail!"<<endl; return false; } if(LOBYTE(wsaData.wVersion)!= 2|| HIBYTE(wsaData.wVers
2008-07-11 08:54:00
650
基于XMPP协议的GLOOX实现的一个小型即时通信软件QTALK
2010-04-29
Windows系统的多显示功能实现
2010-03-22
Cashfiesta挂点工具FiestaFere
2010-03-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人