XGS笔记
defy_
这个作者很懒,什么都没留下…
展开
-
CArray笔记
CArray类实现动态数组的功能。CArray是从CObject派生,有两个模板参数,第一个参数就是CArray类数组元素的变量类型,后一个是函数调用时的参数类型。CArray Var1;CArray Var2;Var2的效率要高。CArray中的成员变量及作用。TYPE* m_pData; // 数据保存地址的指针int m_nSize; // 用户当转载 2013-03-06 09:02:29 · 657 阅读 · 0 评论 -
关于vc读取ini单引号丢弃问题
代码入下:CString cstmp; memset(strVar,'\0',8096); ::GetPrivateProfileString("Service","StationNo","",strVar,8096,cspath); csStationNo.Format("%s",strVar); AfxMessageBox(csStationNo);在ini文件中Station转载 2011-11-09 11:39:21 · 825 阅读 · 0 评论 -
笔记:线程同步
Windows支持4种类型的同步对象,可以用来同步由并发运行的线程所执行的操作:临界区——CCriticalSection互斥量——CMutex事件——CEvent信号——CSemaphore这些类封装在MFC中。临界区:最简单类型的线程同步对象。用来串行化对由两个或者多个线程共享的链表、简单变量、结构和其他资源的访问。这些线程必须属于相同的进程,因为临界区不能转载 2011-12-07 10:47:35 · 430 阅读 · 0 评论 -
新开线程中调用UpdateData(false)出错
引用论坛中一个帖子的解释和解决方案:MFC是在类层次上的线程安全而不是在对象层次上的线程安全. 如果把一个CWnd * P传递到另外一个线程,在这个线程中CWnd的有些成员 函数将不能使用,因为在MFC内部维护一个HWND和MFC对象间的映射,但这个映射 不能跨线程,所以在一个线程中把一个CWnd * P传递到另外一个线程,另外一个 线程只有CWnd * 而没有相应的H转载 2011-12-23 09:37:00 · 761 阅读 · 0 评论 -
安装.NET Framework3.5 sp1碰到的问题
因为安装oracle 10g,xp的Framework3.0怎么也通过不了某一项,只好到微软官网下载3.5 sp1。前后下载了两个版本,一个是63M的,一个是231M。前者是下载版,后者是完整版,不过后者在正常安装过程中还是要连接网络,搜索到一个方法可以跳过该步骤。1.将下载好的dotnetfx35.exe解压2.在dotnetfx35\wcu\dotNetFramework下建立批处转载 2011-11-21 15:17:58 · 1621 阅读 · 0 评论 -
[NT服务]错误1053
服务程序安装后,报错1053,反复检查代码没有发现错误。 最后发现少了libmysql.dll库,添加后程序正常运行,不再报错1053。 该动态链接库是程序运行需要的,不是服务需要的。但是也会产生1053的错误影响。原因不详,不过算是一种解决方法。原创 2012-12-20 08:47:13 · 568 阅读 · 0 评论 -
vc6.0转vs2005不适之处(一)——字符集
参考:http://jingyan.baidu.com/article/6525d4b1090139ac7d2e9413.htmlvs2005默认设置是Unicode字符集,vc6.0默认multi-byte多字符集。当我们试图用vc6.0上正确的程序在vs2005上运行时,第一个碰到的问题就会是它。MessageBox( hwnd, "ok", "message", 0 );这样原创 2012-02-07 14:24:14 · 904 阅读 · 0 评论 -
[ADO]为什么在其他机器上连接ORA数据库失败或者出现乱码呢?
本来在自己的机子(WIN7环境)测试一切OK,但是放入客户的XP机子后就不能正常连接数据库,或者从数据库取出值是乱码。 这是为什么呢? Provider=OraOLEDB.Oracle.1;User ID=dbase;Data Source=dbase;Persist Security Info=False 对!你没看错~就是这句话!乱码神马的完全不是你的错! 修改为原创 2012-11-28 21:08:07 · 421 阅读 · 0 评论 -
[VC]syntax error : missing ';' before identifier 'ServiceStatus'
无可奈何...每次碰到这个问题都忘了怎么处理了... 很简单...stdAfx.h中加入#include 就可以了...原创 2012-12-03 10:52:00 · 500 阅读 · 0 评论 -
笔记:计时器和空闲处理
使用计时器只需要了解两个函数:CWnd::SetTimer用于产生以指定时间间隔发送消息的计时器;CWnd::KillTimer消除计时器。根据传递给SetTimer的参数,计时器通过下面的两种途径通知应用程序间隔时间已到:给指定窗口发送WM_TIMER消息;调用一个应用程序定义的回调函数。这两种类型的计时器消息在发送给应用程序时具有较低的优先级别,只有在消息队列中没有其他消息时才处理它们。转载 2011-12-05 17:10:45 · 1657 阅读 · 0 评论