DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
上一页 1 ··· 457 458 459 460 461 462 463 464 465 ··· 474 下一页

2012年7月13日

摘要: 为了使软件版本号的最后一位,即修订号与由svn管理的代码库修订号保持一致并自动更新,可以利用VS2005的生成事件和 svn 中的 subwcrev 程序实现,步骤如下:工具/原料Visual Studio 2005 SVN 客户端(TortoiseSVN 或其他 ) 步骤/方法编写一个模板文件,比如取名为 version_template.h,内容如下#ifndef _VERSION_H_#define _VERSION_H_#define VER_MAJOR 1#define VER_MINOR 0#define VER_REVISION $WCREV$#endif //!_VERSION 阅读全文
posted @ 2012-07-13 10:01 DoubleLi 阅读(1572) 评论(0) 推荐(0)

2012年7月12日

摘要: 一.IDE基础配置1.字体VC6中“Tools→Options→Format→Font”配置字体;VC2005中“工具→选项→环境→字体和颜色”配置字体。编写代码一般采用等宽字体,等宽点阵(位图)字体,相对矢量字体而言具有兼容性好和显示清晰的优点。常用的编程等宽字体包括Fixedsys(VC6和notepad御用字体)、Consolas、YaHei Mono。VC6默认可选字体只有Fixedsys和Terminal,可通过修改注册表来改字体,在HKEY_CURRENT_USER/Software/Microsoft/DevStudio/6.0/Format下面有几个子键,可以修改Source 阅读全文
posted @ 2012-07-12 20:29 DoubleLi 阅读(598) 评论(0) 推荐(0)

摘要: VC的工程设置解读Project--Settings VC工程设置可能会直接影响到工程的正确性,有时是BUG产生的直接原因,在出现莫名其妙的错误,首先应考虑到是否是工程设置有问题,这无论对于开发还是测试,都是很必要的,本文大致介绍一下工程设置选项。 工程选项的快捷建是Alt+F7, 左边的列表可以选择要设置的工程编译方式(Debug或Release),如果多个工程,还可以选择要设置的工程。 右边是一个属性页,内容十分丰富,依次是: General , Debug , C/C++ , Link , Resource , MIDL , Browse Info , Custom Build ... 阅读全文
posted @ 2012-07-12 10:25 DoubleLi 阅读(1177) 评论(0) 推荐(0)

摘要: 在调试 Visual Studio 2008 程序时,经常有一些动态链接库(即 dll 文件)需要加载到工程里,这样才能依赖第三方库进行程序调试。这些动态链接库,往往都是测试版本或是开发中的版本,或者会有若干个版本;这个时候,如果直接把 dll 所在目录加到 PATH 里,则会有潜在冲突的危险;如果直接拷贝到 Visual Studio 的目录下,假如测试工程太多,每次有新版本的动态链接库更新时,你需要更新若干次,拷贝、粘贴苦不堪言。在开发过程中,究竟怎样来让 Visual Studio 链接这些 lib 及 dll 文件会比较好呢?总体上来说,有几种方法可以改变 Visual Studio 阅读全文
posted @ 2012-07-12 10:14 DoubleLi 阅读(7995) 评论(0) 推荐(0)

2012年7月11日

摘要: DSW:全称是Developer Studio Workspace,最高级别的配置文件,记录了整个工作空间的配置信息,她是一个纯文本的文件,在vc创建新项目的时候自动生成 DSP:全称是Developer Studio Project,也是一个配置文件,不过她记录的是一个项目的所有配置信息,纯文本文件 OPT:与DSW、DSP配合使用的配置文件,她记录了与机器硬件有关的信息,同一个项目在不同的机器上的opt文件内容是不同的 CLW:记录了跟ClassWizard相关的信息,如果丢失了clw文件,那么在Class View面板里就没有类信息 PLG:实际上是一个超文本文件,可以用Int... 阅读全文
posted @ 2012-07-11 20:52 DoubleLi 阅读(478) 评论(0) 推荐(0)

摘要: 1. 如果在已经处于 ESTABLISHED状态下的socket(一般由端口号和标志符区分)调用closesocket(一般不会立即关闭而经历TIME_WAIT的过程)后想继续重用该socket:BOOL bReuseaddr=TRUE;setsockopt(s,SOL_SOCKET ,SO_REUSEADDR,(const char*)&bReuseaddr,sizeof(BOOL)); 2. 如果要已经处于连接状态的soket在调用closesocket后强制关闭,不经历TIME_WAIT的过程:BOOL bDontLinger = FALSE; setsockopt(s,SOL_ 阅读全文
posted @ 2012-07-11 20:50 DoubleLi 阅读(2716) 评论(0) 推荐(0)

2012年7月10日

摘要: char *GetBuffer(n)当n大于0时,是为CString变量分配一个长度为n的字节数组,返回值是这个数组的地址当n等于0时,返回CString变量本身拥有的字符串数组的头ReleaseBuffer一般用在GetBuffer,因为在调用了GetBuffer后变量本身会给自己上锁,于是所有能改变自身值的函数都不能用(如果Left,Mid),要用ReleaseBuffer解锁一.函数原型CString::GetBuffer LPTSTR GetBuffer( int nMinBufLength );throw( CMemoryException );Return ValueAn LPTS 阅读全文
posted @ 2012-07-10 15:35 DoubleLi 阅读(1001) 评论(0) 推荐(1)

摘要: 可以用GetSystemMetrics函数可以获取系统分辨率,但这只是其功能之一,GetSystemMetrics函数只有一个参数,称之为「索引」,这个索引有75个标识符,通过设置不同的标识符就可以获取系统分辨率、窗体显示区域的宽度和高度、滚动条的宽度和高度。为了使使GetSystemMetrics的功能,我们以获取系统分辨率为例,并将其中的两个值用TextOut输出到窗体中。第一步:用GetSystemMetrics获取屏幕的宽度和高度int x, y;x = GetSystemMetrics(SM_CXSCREEN); //屏幕宽度 y = GetSystemMetrics(SM_CYS. 阅读全文
posted @ 2012-07-10 15:18 DoubleLi 阅读(9422) 评论(1) 推荐(0)

摘要: _itoa功能:把一整数转换为字符串用法:char * _itoa(int value, char *string, int radix); 详细解释: _itoa是英文integer to array(将int整型数转化为一个字符串,并将值保存在数组string中)的缩写.其中value为要转化的整数, radix是基数的意思,即先将value转化为radix进制的数,之后再保存在string中. 备注:该函数的头文件是"stdlib.h" 程序例: #include <stdlib.h> #include <stdio.h> int main() 阅读全文
posted @ 2012-07-10 15:06 DoubleLi 阅读(39295) 评论(0) 推荐(2)

2012年7月5日

摘要: 非模态对话框自动销毁的好方法在进行非模态对话框编程时,由于其需要通过new 一个对话框对象,然后调用Create函数来创建,这就牵涉到何时把对话框delete掉的问题,通过如下方法,可以让你不再担心对话框忘记delete掉而导致的内存泄漏问题。1、用ClassWizard在对话框中添加如下虚拟函数virtual void PostNcDestroy();这样就有了这样一个函数:void CAboutDlg::PostNcDestroy() {// TODO: Add your specialized code here and/or call the base classdelete this 阅读全文
posted @ 2012-07-05 11:26 DoubleLi 阅读(4076) 评论(0) 推荐(0)

上一页 1 ··· 457 458 459 460 461 462 463 464 465 ··· 474 下一页