自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(72)
  • 收藏
  • 关注

原创 地段地段还是地段—06自住年代地段新解

月28日  浙商网 文字大小[大 中 小] [打印] [关闭] [评论]   房地产业有句名言,“第一是地段,第二是地段,第三还是地段”,据传是李嘉诚说的,被很多开发商奉为至理名言。事实也证明,地段的确是房地产开发的成败关键,尤其是选址。不过,在2006年,这个以自住需要为主流的变化年代,对消费者而言,“地段”所包涵的意义是不是有更多的需求及特色呢?  “第一是地段”,

2009-11-19 15:50:00 991 1

原创 房产投资小技巧

 1.房产投资必读-以房养房以租抵贷划算吗                                 对于降低当前居高不下的房价,国家煞费苦心稳定房价,政策一个接着一个地出台,因此普通的购房者随着风云变换的形势而动,及时调整自己的购房策略是目前的当务之急。                                       目前在许多购房者中依然存在着“以房养房”、“以租抵贷

2009-11-19 15:33:00 1311

原创 应用程序正常初始化(0xc0150002)失败

  去下载一个“vcredist_x86.exe”的安装程序安装起来之后就可以解决这个问题了。。。现与遇到此问题的同志们分享!

2009-11-19 15:09:00 1043

原创 CComPtr用法(收藏)

2009-10-11 14:58COM接口指针很危险,因为使用过程中需要每一个使用者都要严格并且正确的AddRef和Release,一旦出现问题,就会造成对象不能被正常释放,或者对象被重复删除,造成程序崩溃。所以使用COM接口,必须小心翼翼才行。但是,即使所有的代码中,都正确的AddRef和Release,也不一定能保证万无一失,例如:void SomeApp( IHell

2009-10-20 14:51:00 996

原创 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 1933 1

原创 你一生中要听的一百首英文电影插曲

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 10924

原创 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 965

原创 IUnknown IClassFactory IDispatch

IUnknown  IUnknown        {        public:            BEGIN_INTERFACE            virtual HRESULT STDMETHODCALLTYPE QueryInterface(                 /* [in] */ REFIID riid,                /* [iid_is

2009-09-09 15:01:00 1013 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 849 1

原创 CSemaphore 类

CSemaphore 类当需要一个计数器来限制可以使用某个线程的数目时,可以使用“信号量”对象。CSemaphore 类的对象保存了对当前访问某一指定资源的线程的计数值,该计数值是当前还可以使用该资源的线程的数目。如果这个计数达到了零,则所有对这个 CSemaphore 类对象所控制的资源的访问尝试都被放入到一个队列中等待,直到超时或计数值不为零时为止。一个线程被释放已访问了被保护的资源时,计数值

2009-09-07 14:51:00 2071 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 2498 1

原创 CSemaphore/CMutex/CCriticalSection/CEvent区别

CSemaphore/CMutex/CCriticalSection/CEvent区别如果某个线程必须等待某些事件发生后才能存取相应的资源,用CEvent;如果一个应用同时可以有多个线程存取相应资源,用CSemaphore;如果有多个应用(多个进程)同时存取相应资源,用CMutex,否则用CCriticalSection。  CCriticalSection不是核心对象,其余几个都是  互

2009-08-24 17:04:00 1864

原创 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 29076 9

原创 union , struct

 1.   联合说明和联合变量定义               联合也是一种新的数据类型,   它是一种特殊形式的变量。               联合说明和联合变量定义与结构十分相似。其形式为:                 union   联合名{                           数据类型   成员名;                           数据类型  

2009-08-19 10:31:00 888

原创 _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 10533 4

原创 _declspec(dllexport)

我相信写WIN32程序的人,做过DLL,都会很清楚 __declspec(dllexport)的作用,它就是为了省掉在DEF文件中手工定义导出哪些函数的一个方法。当然,如果你的DLL里全是C++的类的话,你无法在DEF里指定导出的函数,只能用__declspec(dllexport)导出类。但是,MSDN文档里面,对于 __declspec(dllimport)的说明让人感觉有点奇怪,

2009-08-12 14:08:00 2627

原创 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 591

原创 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 684

原创 存储过程的两种返回方法

存储过程有两种方式返回值:第一:通过output 参数第二:通过return来实现enum __declspec(uuid("0000052c-0000-0010-8000-00aa006d2ea4"))ParameterDirectionEnum{    adParamUnknown = 0,    adParamInput = 1,    adParamOutput = 2,    adP

2009-05-21 10:17:00 3933

原创 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 3756 2

原创 SQL Server中char、varchar、text和nchar、nvarchar、ntext的区别

很多开发者进行数据库设计的时候往往并没有太多的考虑char, varchar类型,有的是根本就没注意,因为存储价格变得越来越便宜了,忘记了最开始的一些基本设计理论和原则,这点让我想到了现在的年轻人,大手一挥一把人民币就从他手里溜走了,其实我想不管是做人也好,做开发也好,细节的把握直接决定很多东西。当然还有一部分人是根本就没弄清楚他们的区别,也就随便选一个。在这里我想对他们做个简单的分析,当然如果有

2009-05-14 14:01:00 4730

原创 varchar和nvarchar

varchar和nvarchar2008-08-13 23:54尽量用varchar1.varchar[(n)]        长度为      n      个字节的可变长度且非      Unicode      的字符数据。n      必须是一个介于      1      和      8,000      之间的数值。存储大小为输入数据的字节的实际长

2009-05-14 13:52:00 626

原创 数据库- 系统数据类型 

数据库中有大量数据类型.以下做个分类: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 897

原创 经典的sql语言教程(1)

经典的sql语言教程(1)2006年11月05日 星期日 16:44##2 (一)数据定义 SQL数据定义功能包括定义数据库、基本表、索引和视图。首先,让我们了解一下SQL所提供的基本数据类型:(如^00100009b^) 1.数据库的建立与删除 (1)建立数据库:数据库是一个包括了多个基本表的数据集,其语句格式为:CREATE DATABASE [其它参数] 其中,

2009-04-24 14:31:00 1502 3

原创 经典的sql语言教程4

经典的sql语言教程42006年11月05日 星期日 16:48##2 (四) 数据控制 由于数据库管理系统是一个多用户系统,为了控制用户对数据的存取权利,保持数据的 共享及完全性,SQL语言提供了一系列的数据控制功能。其中,主要包括安全性控制、完整性控制、事务控制和并发控制。 1.安全性控制 数据的安全性是指保护数据库,以防非法使用造成数据泄露和破坏。保证数据安全

2009-04-24 14:30:00 794

原创 经典的sql语言教程3

经典的sql语言教程32006年11月05日 星期日 16:45##2 (三) 数据更新 数据更新包括数据插入、删除和修改操作。它们分别由INSERT语句,DELETE语句及UPDATE语句完成。这些操作都可在任何基本表上进行,但在视图上有所限制。其中,当视图是由单个基本表导出时,可进行插入和修改操作,但不能进行删除操作;当视图是从多个基本表中导出时,上述三种操作都不能

2009-04-24 14:29:00 1266

原创 经典的sql语言教程2

经典的sql语言教程22006年11月05日 星期日 16:45##2 (二)数据查询 SQL是一种查询功能很强的语言,只要是数据库存在的数据,总能通过适当的方法将它从数据库中查找出来。SQL中的查询语句只有一个:SELECT,它可与其它语句配合完成所有的查询功能。SELECT语句的完整语法,可以有6个子句。完整的语法如下: SELECT 目标表的列名或列表达式集合

2009-04-24 14:28:00 790

原创 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 2257

原创 线程安全

什么是线程安全?  如果你的代码所在的进程中有多个线程在同时运行,而这些线程可能会同时运行这段代码。如果每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线程安全的。  或者说:一个类或者程序所提供的接口对于线程来说是原子操作或者多个线程之间的切换不会导致该接口的执行结果存在二义性,也就是说我们不用考虑同步的问题。  线程安全问题都是由全局变量及静态变量引起

2009-02-19 16:39:00 549

原创 模板的概念 ---模板分两类:函数模板和类模板

C++模板(一):模板的概念2007年02月01日 星期四 23:13哎呀,贴的顺序有些乱,应该先贴这个来着=。=姑且在标题上标明吧~~****************************************************************当函数重载时,函数名称和执行的功能完全相同,不同的只是函数的返回类型和参数类型,但必须为他们分别定义

2008-11-27 17:21:00 4397 1

原创 类模板和模板类

类模板和模板类 1、类模板类模板也称为类属类或类生成类,是为类定义的一种模式,它使类中的一些数据成员和成员函数的参数或返回值可以取任意的数据类型。类模板不是一个具体的类,它代表着一族类,是这一族类的统一模式。使用类模板就是要将它实例化为具体的类。 定义类模板的一般形式为: template class 类名 {  

2008-11-27 17:17:00 957

原创 select模型

 select模型                                           Winsock分别提供了“套接字模式”和“套接字I/O模型”,可对一个套接字上的I/O行为加以控制。注意:“套接字模式”和“套接字I/O模型”是无关的,套接字模型的出现是为了解决套接字模式存在的某些限制。 Winsock提供两种套接字模式:锁定和非锁定。 套接字I/O模型

2008-10-30 15:02:00 733

原创 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 1695

原创 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 1500

原创 socket编程原理

UNIX系统的I/O命令集,是从Maltics和早期系统中的命令演变出来的,其模式为打开一读/写一关闭(open-write-read-close)。在一个用户进程进行I/O操作时,它首先调用"打开"获得对指定文件或设备的使用权,并返回称为文件描述符的整型数,以描述用户在打开的文件或设备上进行I/O操作的进程。然后这个用户进程多次调用"读/写"以传输数据。当所有的传输操作完成后,用户进程关闭调用,

2008-10-30 14:33:00 949

原创 WSAStartup

WSAStartup()  简述:                          #include                           int PASCAL FAR WSAStartup ( WORD wVersionRequested, LPWSADATA lpWSAData );          wVersionRequested Windows So

2008-10-30 14:26:00 809

原创 注册或卸载服务--利用bat文件

可以利用bat文件注册和卸载一个服务. 具体方法如下:建立一个txt文件,编辑文件,写入命令 Service -i  为注册一个服务.然后把后缀.txt改成.bat,然后保存就可以.点击运行就可以了.Service -i  为注册一个服务Service -u 为卸载一个服务   

2008-10-20 09:58:00 3545

原创 什么是批处理文件?有什么作用?

1.批处理,也称为批处理脚本,英文译为BATCH,批处理文件后缀BAT就取的前三个字母。它的构成没有固定格式,只要遵守以下这条就ok了:每一行可视为一个命令,每个命令里可以含多条子命令,从第一行开始执行,直到最后一行结束,它运行的平台是DOS。 bat是dos下的批处理文件 .cmd是nt内核命令行环境的另一种批处理文件 从更广义的角度来看,unix的shell脚本以及其它操作系统甚至应用程序中由

2008-10-20 09:55:00 3844

原创 关于字节对齐问题在通信程序中的开发经验

在通讯程序中经常要涉及到传送struct.而struct中经常要涉及到字节对齐问题. 为保证通讯两端数据读取的一致,两端必须定义相同的字节对齐.一般通讯中涉及到struct按1字节对齐.第二,涉及到不足四个字节,尽量把它补足四个字节.这样就不会出现问题了.#pragam pack(1)struct{    DWORD   dwId;    short        

2008-10-14 17:05:00 1006

原创 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 3771

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除