博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2008年12月30日

摘要: 想利用vs.net的生成后事件将生成的dll文件自动copy到指定的系统目录中,于是,在项目属性中输入生成后事件指令如下 copy $(OutputDir)instrumentation.dll c:/windows/system32/ 但产生了编译错误报告: error PRJ0019: 工具从"正在执行生成后事件..." 网上搜索,没有有效解决办法。于是自己动手。 想想生成后事件不过也是命... 阅读全文

posted @ 2008-12-30 09:48 浪端之渡鸟 阅读(845) 评论(0) 推荐(0)

2008年12月29日

摘要: 如果我们要将一个控件转换成视图类,我们一般会想到CCtrlView,用它实现的控件视图一般添加一个GetXXXCtrl函数,函数的作用是返回视图中控件的引用,如果在MFC程序中跟踪它的调用我们会发现它的实现是这样的(以CEdit控件为例) _AFXEXT_INLINE CEdit& CEditView::GetEditCtrl() const { return *(CEdit... 阅读全文

posted @ 2008-12-29 15:04 浪端之渡鸟 阅读(795) 评论(1) 推荐(0)

2008年12月26日

摘要: 如果你在类的定义中使用自己的对象作为成员,那岂不是一个无穷无尽的递归定义吗? 你叫编译器怎么做? 如果你把他定义为静态的话,那么他其实是一个全局的变量,不属于类的成员.所以可以实现 在程序中,自身是不能调用自身的,所以,一个类内不可以定义自身类的对象。 因为静态对象表示的不是类某一对象的属性,而是类的属性,所以,定义自身类的静态对象又是正确的,而只有在定义类的属性是... 阅读全文

posted @ 2008-12-26 16:08 浪端之渡鸟 阅读(756) 评论(0) 推荐(0)

2008年12月24日

摘要: .h protected: // 控件条嵌入成员 CStatusBar m_wndStatusBar; CToolBar m_wndToolBar; CSplitterWnd m_wndSplitter;//定义好分割变量 重写函数OnCreateClient(其中CMapLegend,CMapView已存在): BOOL CMainFrame::OnCreateClient(LP... 阅读全文

posted @ 2008-12-24 16:18 浪端之渡鸟 阅读(1839) 评论(3) 推荐(0)

2008年12月23日

摘要: 1.strlen()求的是字节长度 _tcsclen()求的是所看到的汉字以及字母个数 例如:strlen("你好") == 4; _tcsclen("你好") == 2; 2.多字符集->unicode->utf8 TCHAR* CTerAdd::Convert(CHAR* tmpSql){ DWORD dwNum = MultiByteToWideChar (CP_ACP, ... 阅读全文

posted @ 2008-12-23 17:59 浪端之渡鸟 阅读(269) 评论(0) 推荐(0)

2008年12月19日

摘要: 3.1 读取ASCII编码选择ASCII编码保存文件,文件内容是:您好, Ye Ming!C++程序读取并显示如下:FILE *myfile=fopen("CharsetExample.txt","rb"); char a[100]; fgets(a,100,myfile); printf("字节数=%d\n",strlen(a))... 阅读全文

posted @ 2008-12-19 16:44 浪端之渡鸟 阅读(669) 评论(0) 推荐(0)

摘要: 第2章 U n i c o d e 随着M i c r o s o f t 公司的Wi n d o w s 操作系统在全世界日益广泛的流行,对于软件开发人员来说,将目标瞄准国际上的各个不同市场,已经成为一个越来越重要的问题。美国的软件版本比国际版本提前6 个月推向市场,这曾经是个司空见惯的现象。但是,由于各国对Wi n d o w s 操作系统提供了越来越多的支持,因此就更加容易为国际市场生产各种... 阅读全文

posted @ 2008-12-19 16:21 浪端之渡鸟 阅读(615) 评论(2) 推荐(0)

2008年12月18日

摘要: “Unicode字符集”和“多字符集”(Multi-Byte)”的转换!~ 函数分别为:见MSDN的ms-help://MS.MSDNQTR.v80.chs/MS.MSDN.v80/MS.WIN32COM.v10.en/intl/unicode_2bj9.htmint WideCharToMultiByte(UINT CodePage, // code pageD... 阅读全文

posted @ 2008-12-18 17:08 浪端之渡鸟 阅读(850) 评论(1) 推荐(0)

2008年12月2日

摘要: 这篇文档是为了说明怎样从一个文件里用OGR的C++类读取和写入数据。强烈建议在读此文档之前首先阅读介绍OGR体系结构介绍文档,里面介绍了OGR里主要的类以及他们所完成的功能。 从OGR 读取数据 为了描述如何通过OGR读取数据,我们编写一个小的示例,从OGR文件里读出数据,并按照一定格式输出。 首先我们需要注册我们渴望读取的所有格式。这个通过调用OGRRegisterAll()就... 阅读全文

posted @ 2008-12-02 16:45 浪端之渡鸟 阅读(914) 评论(0) 推荐(0)

2008年11月26日

摘要: 1>e:\最新_carinfo_能运行_修改后\trunk\vss\inc\ccarinfoadd.h(96) : error C2143: 语法错误 : 缺少“;”(在“*”的前面)1>e:\最新_carinfo_能运行_修改后\trunk\vss\inc\ccarinfoadd.h(96) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int1>... 阅读全文

posted @ 2008-11-26 09:45 浪端之渡鸟 阅读(8923) 评论(0) 推荐(0)

摘要: 我在创建一个对象的时候,用到多态 IVSS_Statement *m_stmt; m_stmt = new CVSS_MysqlStatement((CVSS_MysqlConnection*) m_pConn); 现在我要获得m_stmt; CVSS_MysqlStatement* getMsmt(); CVSS_MysqlStatement* getMsmt() { return (CVS... 阅读全文

posted @ 2008-11-26 09:26 浪端之渡鸟 阅读(1577) 评论(0) 推荐(0)

2008年11月25日

摘要: 在写项目的时候,碰到此错误,大概一搜,是因为动态分配的内存不够用造成的, 仔细考虑,原来是写的.h文件,没有及时拷贝到inc文件夹下面,导致新的变量没有分配内存。 阅读全文

posted @ 2008-11-25 20:53 浪端之渡鸟 阅读(217) 评论(0) 推荐(0)

摘要: 当unicode时候,对话框不显示~~~,改为多字符则可以,郁闷,·又是一晌~~ 阅读全文

posted @ 2008-11-25 14:51 浪端之渡鸟 阅读(1094) 评论(0) 推荐(0)

2008年11月24日

摘要: 某些情况下,在写C++类的时候,希望能通过一个静态初始化函数来对类的一些静态成员进行初始化。比如,往静态的std::map成员或者std::vector成员里添加一些固定的内容等。这在Java里通过static块很容易实现。但在C++里该怎么办呢? 如果要初始化一个普通的静态成员,只需要在实现文件(源文件)中定义该成员并赋予初始值即可,比如: class Test1 {public: ... 阅读全文

posted @ 2008-11-24 16:28 浪端之渡鸟 阅读(4783) 评论(0) 推荐(0)

2008年11月21日

摘要: 四、 网上注册 个人消费用户笔记本电脑保修升级演示 1、 登陆 www.icare.hp.com.cn , 选择“家庭使用者注册”链接(如果用户以前注册过,直接在“会员登陆”页面输入正确的“用户名”和“密码”登陆)。 2、 在“用户注册信息”页面正确输入登陆“用户名 ” 和“密码”信息后,进入“下一步”。 3、 在“用户注册信息”页面正确输入相关信息,进入“下一步”。 4、 注册成功后,在“个人使... 阅读全文

posted @ 2008-11-21 20:04 浪端之渡鸟 阅读(792) 评论(0) 推荐(0)

2008年11月18日

摘要: 1、 将 Invalidate()替换为 InvalidateRect() Invalidate()会导致整个窗口的图象重画,需要的时间比较长,而 InvalidateRect()仅仅重画 Rect 区域内的内容,所以所需时间会少一些。虫虫以前很懒,经常为一小块区域的重画就调用 Invalidate(),不愿意自己去计算需要重画的 Rect,但是事实是,如果你确实需要改善闪... 阅读全文

posted @ 2008-11-18 09:16 浪端之渡鸟 阅读(1601) 评论(1) 推荐(0)

2008年11月17日

摘要: 方法一: CRect rt; int screenW; int screenH; CWnd* pDeskTop = this->GetDesktopWindow(); pDeskTop->GetClientRect(rt); screenW = rt.Width(); screenH = rt.Height(); 方法二: int x = GetSystemMetrics(SM_CXFULLSC... 阅读全文

posted @ 2008-11-17 17:44 浪端之渡鸟 阅读(717) 评论(0) 推荐(0)

摘要: 将JPG图片绘制在对话框背景上: 显示JPG图片的函数 void CMyDlg::ShowPicture(CDC *pDC, CString m_strBRoute, int x, int y, int width, int height) { HANDLE hFile = CreateFile(m... 阅读全文

posted @ 2008-11-17 16:20 浪端之渡鸟 阅读(1294) 评论(2) 推荐(0)

2008年11月15日

摘要: 问题原因:没有找到这个相应控件类型 ! 一般有三种情况:一是控件ID不存在,二是控件未创建,三是控件的类型不对 看看DoDataExchange函数 我遇到这种情况是 对话框程序运行不起来,弹不出对话框。 后来仔细查看是 删除了一个控件,却忘记在DoDataExchange中将其对应的DDX_语句删除。这就造成控件ID和后面的数据无法匹配,也就... 阅读全文

posted @ 2008-11-15 21:04 浪端之渡鸟 阅读(1546) 评论(0) 推荐(0)

2008年11月13日

摘要: 开始在vss_map的stdafx.h包含: #include // TODO: 在此处引用程序需要的其他头文件#include "IVSS_MapDefinition.h" #include "IVSS_CoreLibrary.h"#pragma comment(lib,"vss_core.lib") #include "IVSS_GeoLibrary.h"#pragma comment(li... 阅读全文

posted @ 2008-11-13 11:53 浪端之渡鸟 阅读(3021) 评论(0) 推荐(0)

摘要: 意义:能够在创建新对象的时候马上获得变量的值,不用再想办法获取,比如如下: void CMainFrame::OnMenuCartrack(){ CVSS_LoginDlg dlg; if(!(GetModuleFactoryPtr()->ConnectDB(&dlg.m_dbInfo))) return; CDC* dc = this->GetDC(); CTrackView* pTrackV... 阅读全文

posted @ 2008-11-13 08:41 浪端之渡鸟 阅读(399) 评论(0) 推荐(0)

2008年11月12日

摘要: 保时捷汽车标志保时捷标志采用斯图加特市的盾形市徽。斯图加特市盛产一种名贵种马,左上方和右下方是鹿角的图案,表示斯图加特曾是狩猎的好地方;右上方和左下方的黄色条纹代表麦子,喻示五谷丰登,黑色代表肥沃的土地,红色象征人们的智慧和对大自然的钟爱。 兰博基尼汽车标志这是一头浑身充满力气,正准备冲击的公牛,寓意由意大利兰博基尼公司生产的赛车马力大、速度快、战无不胜。汽车标志中这只具有意大利血统的公牛所代表... 阅读全文

posted @ 2008-11-12 20:16 浪端之渡鸟 阅读(2056) 评论(1) 推荐(0)

2008年11月11日

摘要: MFC 绘图 绘图一般在视图类的(屏幕/打印机)绘图消息响应函数OnDraw中进行,例如: void CTestView::OnDraw(CDC* pDC) { CTestDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); if (!pDoc) ... 阅读全文

posted @ 2008-11-11 14:22 浪端之渡鸟 阅读(1545) 评论(0) 推荐(0)

摘要: 标题 Const用法小结 选择自 yuguanglou 的 Blog 关键字 Const用法小结 出处 http://dev.csdn.net/develop/article/50/50538.shtm1. const常量,如const int max = 100; 优点:const常量有数据类型,而宏常量没有数据类型。编译器可以对前者进行类型安全检查,而对后者只进行字符替换,没有类型安全检查,并... 阅读全文

posted @ 2008-11-11 11:13 浪端之渡鸟 阅读(277) 评论(0) 推荐(0)

2008年11月6日

摘要: error LNK2019: 无法解析的外部符号 public: __thiscall 这是由于您在定义类的时候,有些成员函数没有指明类的名称 程序自然不知道您引用的这个方法是由谁继承的。 如下这样定义类就会出现LNK2019错误: class A { public: int function(); }; function() { .... 阅读全文

posted @ 2008-11-06 16:46 浪端之渡鸟 阅读(18829) 评论(2) 推荐(1)

摘要: 我们知道,用C++开发的时候,用来做基类的类的析构函数一般都是虚函数。可是,为什么要这样做呢?下面用一个小例子来说明: 有下面的两个类: class ClxBase{public: ClxBase() {}; virtual ~ClxBase() {}; virtual void DoSomething() { cout DoSomething();dele... 阅读全文

posted @ 2008-11-06 14:51 浪端之渡鸟 阅读(386) 评论(0) 推荐(0)

2008年10月31日

摘要: CTreeCtrl* p_Tree = (CTreeCtrl*)GetDlgItem(IDC_TREE1); TVINSERTSTRUCT insertStut; insertStut.hInsertAfter = NULL; insertStut.hParent = NULL; insertStut.item.pszText = _T("中国"); insertStut.item.mask =... 阅读全文

posted @ 2008-10-31 09:38 浪端之渡鸟 阅读(696) 评论(0) 推荐(0)

2008年10月30日

摘要: templateclass CArray:public CObject 参数 TYPE 模板参数指定存储在数组中的对象的类型。TYPE是一个由CArray返回的参数。ARG_TYPE 模板参数指定用于访问存储在数组中对象的参数类型。通常是一个对TYPE的参考。ARG_TYPE是一个传递给CArray的参数。 说明 CArray类支持与CArray相似的数组,但是必要时可以动态压缩并扩展。数组索引从... 阅读全文

posted @ 2008-10-30 16:42 浪端之渡鸟 阅读(1213) 评论(0) 推荐(0)

2008年10月29日

摘要: mfc 操作,添加menu资源,默认为IDR_MENU1...要修改为其他的名字则,在资源里头文件resourse.h中 加 #define IDR_OPEN_SHAP 130,然后打开资源文件shp_show.rc->查看代码,把menu1修改为IDR_OPEN_SHAP 阅读全文

posted @ 2008-10-29 10:07 浪端之渡鸟 阅读(1429) 评论(0) 推荐(0)

2008年10月22日

摘要: CString类所有成员函数详解 VC里CString是我们最常用的类之一,我们觉得对它很熟悉了,可是你知道它的所有用法吗? 还是系统的学习一下吧,认真看完本文就OK了。 下面开始: CString::Compareint Compare( LPCTSTR lpsz ) const;返回值 字符串一样 返回0 小于lpsz... 阅读全文

posted @ 2008-10-22 10:17 浪端之渡鸟 阅读(802) 评论(0) 推荐(0)

2008年10月20日

摘要: [字符集]Unicode和UTF-8之间的转换详解 最近在用VC++开发一个小工具,平时用惯了.NET,用起VC++最郁闷的就是字符串处理。当然最最让人难于琢磨的就是字符集,编码之间的转换。通过这几天的研究,终于明白了Unicode和UTF-8之间编码的区别。Unicode是一个字符集,而UTF-8是Unicode的其中一种,Unicode是定长的都为双字节,而UTF-8是可变的,对于汉... 阅读全文

posted @ 2008-10-20 11:26 浪端之渡鸟 阅读(657) 评论(1) 推荐(0)

2008年10月18日

摘要: 在vs2005下的第一个OpenGL程序。 学习OpenGL前的准备工作第一步,选择一个编译环境选择Visual Studio 2005作为学习OpenGL的环境。第二步,配置OpenGL环境具体做法在前一篇中。建议将相应文件放到VC的文件夹下,而不是PlatformSDK中。第三步,安装GLUT工具包GLUT不是OpenGL所必须的,但它会给我们的学习带来一定的方便,推荐安装。Windows环... 阅读全文

posted @ 2008-10-18 15:29 浪端之渡鸟 阅读(455) 评论(0) 推荐(0)

2008年10月17日

摘要: Liunx下修改MySQL字符集:1.查找MySQL的cnf文件的位置find / -iname '*.cnf' -print/usr/share/mysql/my-innodb-heavy-4G.cnf/usr/share/mysql/my-large.cnf/usr/share/mysql/my-small.cnf/usr/share/mysql/my-medium.cnf/usr/share... 阅读全文

posted @ 2008-10-17 19:34 浪端之渡鸟 阅读(447) 评论(0) 推荐(0)

摘要: C++中,CTime 与 CString转换 C++中,CTime 与 CString转换CTime m_StartTime1 = CTime::GetCurrentTime();CString csStartTime = m_StartTime1.Format( "%Y%m%d%H%M%S" ); 使用sprintf及sscanf函数进行CString与CTime之间的转换 一.将... 阅读全文

posted @ 2008-10-17 16:31 浪端之渡鸟 阅读(665) 评论(0) 推荐(0)

2008年10月16日

摘要: vs2005代码出现波浪线,卸载项目再添加,一切正常 阅读全文

posted @ 2008-10-16 11:20 浪端之渡鸟 阅读(611) 评论(1) 推荐(0)

2008年10月14日

摘要: char sql[512]; strcpy(sql,"update vehicle_info set VNO = "); strcat(sql,"'"); strcat(sql,readCol[1]); strcat(sql,"'"); strcat(sql,"where VID ="); strcat(sql,readCol[0]); 阅读全文

posted @ 2008-10-14 21:07 浪端之渡鸟 阅读(3178) 评论(1) 推荐(0)

2008年10月13日

摘要: GetParent是返回包含这个窗口的窗口Handle,而不是这个窗口类的父类。例如,对话框中有个CMyEdit,调用GetParent返回的是对话框窗口,而不是CEdit类 靠,一个小小的函数让我郁闷半天 这是发生在滚动条事件: void CMyList::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar){ // TODO:... 阅读全文

posted @ 2008-10-13 20:01 浪端之渡鸟 阅读(1612) 评论(1) 推荐(0)

摘要: ~如题 阅读全文

posted @ 2008-10-13 16:28 浪端之渡鸟 阅读(235) 评论(0) 推荐(0)

2008年10月11日

摘要: 小技巧-给CEdit设置字体 关键词: CEdit 字体 LOGFONT CFont 给CEDIT设置字体的代码: 在类的.h内 CMyEdit * m_pEdit; CFont font; 在类的cpp文件中: LOGFONT lf; memset(&lf,0,sizeof(LOGF... 阅读全文

posted @ 2008-10-11 14:17 浪端之渡鸟 阅读(2771) 评论(0) 推荐(1)

2008年10月9日

摘要: 目标: 动态创建一个CButton按钮并实现其ON_BN_CLICKED消息 实现: 一、创建按钮 定义CButton变量为类的成员变量;CButton button; 定义该按钮的ID;#define IDC_BUTTON1 8888 在适当的地方创建按钮;button.Create("BUTTON", WS_VISIBLE | WS_CHILD | WS_BORDER | BS_AUTO... 阅读全文

posted @ 2008-10-09 17:34 浪端之渡鸟 阅读(4386) 评论(1) 推荐(0)