- 博客(72)
- 收藏
- 关注
原创 地段地段还是地段—06自住年代地段新解
月28日 浙商网 文字大小[大 中 小] [打印] [关闭] [评论] 房地产业有句名言,“第一是地段,第二是地段,第三还是地段”,据传是李嘉诚说的,被很多开发商奉为至理名言。事实也证明,地段的确是房地产开发的成败关键,尤其是选址。不过,在2006年,这个以自住需要为主流的变化年代,对消费者而言,“地段”所包涵的意义是不是有更多的需求及特色呢? “第一是地段”,
2009-11-19 15:50:00
1051
1
原创 房产投资小技巧
1.房产投资必读-以房养房以租抵贷划算吗 对于降低当前居高不下的房价,国家煞费苦心稳定房价,政策一个接着一个地出台,因此普通的购房者随着风云变换的形势而动,及时调整自己的购房策略是目前的当务之急。 目前在许多购房者中依然存在着“以房养房”、“以租抵贷
2009-11-19 15:33:00
1359
原创 应用程序正常初始化(0xc0150002)失败
去下载一个“vcredist_x86.exe”的安装程序安装起来之后就可以解决这个问题了。。。现与遇到此问题的同志们分享!
2009-11-19 15:09:00
1080
原创 CComPtr用法(收藏)
2009-10-11 14:58COM接口指针很危险,因为使用过程中需要每一个使用者都要严格并且正确的AddRef和Release,一旦出现问题,就会造成对象不能被正常释放,或者对象被重复删除,造成程序崩溃。所以使用COM接口,必须小心翼翼才行。但是,即使所有的代码中,都正确的AddRef和Release,也不一定能保证万无一失,例如:void SomeApp( IHell
2009-10-20 14:51:00
1032
原创 Run-Time Check Failure #2 - Stack around the variable 'var' was corrupted
Run-Time Check Failure #2 - Stack around the variable var was corrupted摘要:简介VC++.NET编译新功能,运行时错误检查,编译选项 (/RTC1, equiv. to /RTCsu)最近把一个别人早期在VC 6下编写的一个服务移植到VC 7.1 (.NET 2003)时,突然跳出好些运行时错误提示。经过查询编译器
2009-09-16 14:57:00
1970
原创 你一生中要听的一百首英文电影插曲
01.DIE ANOTHER DAY-不日而亡:《007不日而亡》主题曲02.MAY IT BE-衷心祈祷:《魔戒》主题曲03.HERE I AM-我在这里:《小马王》主题曲04.THERE YOULL BE-你将在那里《珍珠港》主题曲05.LADY MARMALADE-女士《红磨坊》主题曲06.月光爱人:《卧虎藏龙》主题曲07.NO MATTER-《摘星奇缘》主
2009-09-15 16:30:00
11135
原创 memmove和memcpy
memmove和memcpy2009-09-05 13:261.memmove函数原型:void *memmove(void *dest, const void *source, size_t count)返回值说明:返回指向dest的void *指针参数说明:dest,source分别为目标串和源串的首地址。count为要移动的字符的个数函数说明:me
2009-09-15 15:19:00
1000
原创 IUnknown IClassFactory IDispatch
IUnknown IUnknown { public: BEGIN_INTERFACE virtual HRESULT STDMETHODCALLTYPE QueryInterface( /* [in] */ REFIID riid, /* [iid_is
2009-09-09 15:01:00
1045
2
原创 COM知识
(1) COM组件实际上是一个C++类,而接口都是纯虚类。组件从接口派生而来。我们可以简单的用纯粹的C++的语法形式来描述COM是个什么东西: class IObject { public: virtual Function1(...) = 0; virtual Function2(...) = 0; .... }; class MyObject : p
2009-09-09 14:14:00
886
原创 CSemaphore 类
CSemaphore 类当需要一个计数器来限制可以使用某个线程的数目时,可以使用“信号量”对象。CSemaphore 类的对象保存了对当前访问某一指定资源的线程的计数值,该计数值是当前还可以使用该资源的线程的数目。如果这个计数达到了零,则所有对这个 CSemaphore 类对象所控制的资源的访问尝试都被放入到一个队列中等待,直到超时或计数值不为零时为止。一个线程被释放已访问了被保护的资源时,计数值
2009-09-07 14:51:00
2107
1
原创 memcpy和strncpy两个函数用法
2009-07-23 16:23strncpy 原型:extern char *strncpy(char *dest, char *src, int n); 用法:#include 功能:把src所指由NULL结束的字符串的前n个字节复制到dest所指的数组中。 说明: 如果src的前n个字节不含NULL字符,则结果不会以NULL字符结束。 如果src的长度小于n个字节,
2009-09-07 10:10:00
2554
1
原创 CSemaphore/CMutex/CCriticalSection/CEvent区别
CSemaphore/CMutex/CCriticalSection/CEvent区别如果某个线程必须等待某些事件发生后才能存取相应的资源,用CEvent;如果一个应用同时可以有多个线程存取相应资源,用CSemaphore;如果有多个应用(多个进程)同时存取相应资源,用CMutex,否则用CCriticalSection。 CCriticalSection不是核心对象,其余几个都是 互
2009-08-24 17:04:00
1907
原创 sockaddr_in , sockaddr , in_addr区别
sockaddr_in , sockaddr , in_addr区别struct sockaddr { unsigned short sa_family; char sa_data[14]; }; 上面是通用的socket地址,具体到Internet so
2009-08-19 10:34:00
29231
5
原创 union , struct
1. 联合说明和联合变量定义 联合也是一种新的数据类型, 它是一种特殊形式的变量。 联合说明和联合变量定义与结构十分相似。其形式为: union 联合名{ 数据类型 成员名; 数据类型
2009-08-19 10:31:00
943
原创 _declspec(dllexport) 用于DLL中导出函数 和 导出类
__declspec(dllexport) 将一个函数声名为导出函数,就是说这个函数要被包含她的程序之外的程序调用。 extern "C" 指示编译器用C语言方法给函数命名。 在制作DLL导出函数时由于C++存在函数重载,因此__declspec(dllexport) function(int,int) 在DLL会被decorate,例如被decorate成为 function_int
2009-08-12 14:15:00
10641
3
原创 _declspec(dllexport)
我相信写WIN32程序的人,做过DLL,都会很清楚 __declspec(dllexport)的作用,它就是为了省掉在DEF文件中手工定义导出哪些函数的一个方法。当然,如果你的DLL里全是C++的类的话,你无法在DEF里指定导出的函数,只能用__declspec(dllexport)导出类。但是,MSDN文档里面,对于 __declspec(dllimport)的说明让人感觉有点奇怪,
2009-08-12 14:08:00
2695
原创 extern "C"
extern "C" _declspec(dllexport) double SquareRoot(double d); “C”表示按照标准c进行编译 extern 则是用于声明动态导出函数_declspec(dllexport) double SquareRoot(double d);是要外部使用的这个函数在Dll里的,要把它暴露给别
2009-08-12 14:04:00
614
原创 I/O Completion Port
IOCP全称I/O Completion Port,中文译为I/O完成端口。IOCP是一个异步I/O的API,它可以高效地将I/O事件通知给应用程序。与使用select()或是其它异步方法不同的是,一个套接字[socket]与一个完成端口关联了起来,然后就可继续进行正常的Winsock操作了。然而,当一个事件发生的时候,此完成端口就将被操作系统加入一个队列中。然后应用程序可以对核心层进行查询以得到
2009-08-07 16:40:00
722
原创 存储过程的两种返回方法
存储过程有两种方式返回值:第一:通过output 参数第二:通过return来实现enum __declspec(uuid("0000052c-0000-0010-8000-00aa006d2ea4"))ParameterDirectionEnum{ adParamUnknown = 0, adParamInput = 1, adParamOutput = 2, adP
2009-05-21 10:17:00
4025
原创 SQL中char varchar nchar nvarchar ntext区别和使用(资料汇总)
SQL中char varchar nchar nvarchar ntext区别和使用(资料汇总)2008年10月14日 星期二 23:57一、SQL中char varchar nchar nvarchar ntext的区别 1、CHAR。CHAR存储定长数据很方便,CHAR字段上的索引效率级高,比如定义char(10),那么不论你存储的数据是否达到了
2009-05-14 14:12:00
3827
2
原创 SQL Server中char、varchar、text和nchar、nvarchar、ntext的区别
很多开发者进行数据库设计的时候往往并没有太多的考虑char, varchar类型,有的是根本就没注意,因为存储价格变得越来越便宜了,忘记了最开始的一些基本设计理论和原则,这点让我想到了现在的年轻人,大手一挥一把人民币就从他手里溜走了,其实我想不管是做人也好,做开发也好,细节的把握直接决定很多东西。当然还有一部分人是根本就没弄清楚他们的区别,也就随便选一个。在这里我想对他们做个简单的分析,当然如果有
2009-05-14 14:01:00
4787
原创 varchar和nvarchar
varchar和nvarchar2008-08-13 23:54尽量用varchar1.varchar[(n)] 长度为 n 个字节的可变长度且非 Unicode 的字符数据。n 必须是一个介于 1 和 8,000 之间的数值。存储大小为输入数据的字节的实际长
2009-05-14 13:52:00
656
原创 数据库- 系统数据类型
数据库中有大量数据类型.以下做个分类:1.精确数字bit:tinyint:smallint:int:numeric:decimal:small money:money: 2.近似数字float:real: 3.日期时间datetime:smalldatetime: 4.字符串char:varchar:text:
2009-05-14 13:42:00
944
原创 经典的sql语言教程(1)
经典的sql语言教程(1)2006年11月05日 星期日 16:44##2 (一)数据定义 SQL数据定义功能包括定义数据库、基本表、索引和视图。首先,让我们了解一下SQL所提供的基本数据类型:(如^00100009b^) 1.数据库的建立与删除 (1)建立数据库:数据库是一个包括了多个基本表的数据集,其语句格式为:CREATE DATABASE [其它参数] 其中,
2009-04-24 14:31:00
1530
3
原创 经典的sql语言教程4
经典的sql语言教程42006年11月05日 星期日 16:48##2 (四) 数据控制 由于数据库管理系统是一个多用户系统,为了控制用户对数据的存取权利,保持数据的 共享及完全性,SQL语言提供了一系列的数据控制功能。其中,主要包括安全性控制、完整性控制、事务控制和并发控制。 1.安全性控制 数据的安全性是指保护数据库,以防非法使用造成数据泄露和破坏。保证数据安全
2009-04-24 14:30:00
830
原创 经典的sql语言教程3
经典的sql语言教程32006年11月05日 星期日 16:45##2 (三) 数据更新 数据更新包括数据插入、删除和修改操作。它们分别由INSERT语句,DELETE语句及UPDATE语句完成。这些操作都可在任何基本表上进行,但在视图上有所限制。其中,当视图是由单个基本表导出时,可进行插入和修改操作,但不能进行删除操作;当视图是从多个基本表中导出时,上述三种操作都不能
2009-04-24 14:29:00
1312
原创 经典的sql语言教程2
经典的sql语言教程22006年11月05日 星期日 16:45##2 (二)数据查询 SQL是一种查询功能很强的语言,只要是数据库存在的数据,总能通过适当的方法将它从数据库中查找出来。SQL中的查询语句只有一个:SELECT,它可与其它语句配合完成所有的查询功能。SELECT语句的完整语法,可以有6个子句。完整的语法如下: SELECT 目标表的列名或列表达式集合
2009-04-24 14:28:00
823
原创 dll的多进程多线程安全的几种策略
转的]dll的多进程多线程安全的几种策略2008年07月26日 星期六 下午 04:32[from:http://www.cnblogs.com/moonz-wu/archive/2008/05/08/1189021.html]1、动态库只有一个导出函数。这种情况非常少,也是最容易处理的情况。这种情况下编写函数时,只需要考虑不要有冲突的全局数据就可以了。这
2009-02-19 16:48:00
2304
原创 线程安全
什么是线程安全? 如果你的代码所在的进程中有多个线程在同时运行,而这些线程可能会同时运行这段代码。如果每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线程安全的。 或者说:一个类或者程序所提供的接口对于线程来说是原子操作或者多个线程之间的切换不会导致该接口的执行结果存在二义性,也就是说我们不用考虑同步的问题。 线程安全问题都是由全局变量及静态变量引起
2009-02-19 16:39:00
574
原创 模板的概念 ---模板分两类:函数模板和类模板
C++模板(一):模板的概念2007年02月01日 星期四 23:13哎呀,贴的顺序有些乱,应该先贴这个来着=。=姑且在标题上标明吧~~****************************************************************当函数重载时,函数名称和执行的功能完全相同,不同的只是函数的返回类型和参数类型,但必须为他们分别定义
2008-11-27 17:21:00
4465
1
原创 类模板和模板类
类模板和模板类 1、类模板类模板也称为类属类或类生成类,是为类定义的一种模式,它使类中的一些数据成员和成员函数的参数或返回值可以取任意的数据类型。类模板不是一个具体的类,它代表着一族类,是这一族类的统一模式。使用类模板就是要将它实例化为具体的类。 定义类模板的一般形式为: template class 类名 {
2008-11-27 17:17:00
1006
原创 select模型
select模型 Winsock分别提供了“套接字模式”和“套接字I/O模型”,可对一个套接字上的I/O行为加以控制。注意:“套接字模式”和“套接字I/O模型”是无关的,套接字模型的出现是为了解决套接字模式存在的某些限制。 Winsock提供两种套接字模式:锁定和非锁定。 套接字I/O模型
2008-10-30 15:02:00
755
原创 connect, accept .listen, send ,recv, setblock等系列的封装
bool CSock::Listen(int nConnectionBacklog){ return listen(m_sock, nConnectionBacklog) != SOCKET_ERROR;}bool CSock::Accept(CKKSock &rConnectedSocket, SOCKADDR *lpSockAddr, int *lpSockAddrLen){ SOCKET
2008-10-30 14:43:00
1716
原创 Creatsocket , bind socket , send to , receivefrom 等操作封装
bool CSock::Create(int af, int type, int protocol){ m_sock = socket(af, type, protocol); if (m_sock == INVALID_SOCKET) return false; else return true;}bool CSock::Bind(UINT nProt, LPCTSTR lpAddre
2008-10-30 14:36:00
1523
原创 socket编程原理
UNIX系统的I/O命令集,是从Maltics和早期系统中的命令演变出来的,其模式为打开一读/写一关闭(open-write-read-close)。在一个用户进程进行I/O操作时,它首先调用"打开"获得对指定文件或设备的使用权,并返回称为文件描述符的整型数,以描述用户在打开的文件或设备上进行I/O操作的进程。然后这个用户进程多次调用"读/写"以传输数据。当所有的传输操作完成后,用户进程关闭调用,
2008-10-30 14:33:00
974
原创 WSAStartup
WSAStartup() 简述: #include int PASCAL FAR WSAStartup ( WORD wVersionRequested, LPWSADATA lpWSAData ); wVersionRequested Windows So
2008-10-30 14:26:00
853
原创 注册或卸载服务--利用bat文件
可以利用bat文件注册和卸载一个服务. 具体方法如下:建立一个txt文件,编辑文件,写入命令 Service -i 为注册一个服务.然后把后缀.txt改成.bat,然后保存就可以.点击运行就可以了.Service -i 为注册一个服务Service -u 为卸载一个服务
2008-10-20 09:58:00
3613
原创 什么是批处理文件?有什么作用?
1.批处理,也称为批处理脚本,英文译为BATCH,批处理文件后缀BAT就取的前三个字母。它的构成没有固定格式,只要遵守以下这条就ok了:每一行可视为一个命令,每个命令里可以含多条子命令,从第一行开始执行,直到最后一行结束,它运行的平台是DOS。 bat是dos下的批处理文件 .cmd是nt内核命令行环境的另一种批处理文件 从更广义的角度来看,unix的shell脚本以及其它操作系统甚至应用程序中由
2008-10-20 09:55:00
4033
原创 关于字节对齐问题在通信程序中的开发经验
在通讯程序中经常要涉及到传送struct.而struct中经常要涉及到字节对齐问题. 为保证通讯两端数据读取的一致,两端必须定义相同的字节对齐.一般通讯中涉及到struct按1字节对齐.第二,涉及到不足四个字节,尽量把它补足四个字节.这样就不会出现问题了.#pragam pack(1)struct{ DWORD dwId; short
2008-10-14 17:05:00
1049
原创 GetTickCount函数---GetTickCount返回(retrieve)从操作系统启动到现在所经过(elapsed)的毫秒数,它的返回值是DWORD。
GetTickCount函数 函数功能:GetTickCount返回(retrieve)从操作系统启动到现在所经过(elapsed)的毫秒数,它的返回值是DWORD。 函数原型: DWORD GetTickCount(void); VB版 VB声明: Declare Function GetTickCount Lib "kernel32" Alias "Get
2008-10-14 14:11:00
3838
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人