- 博客(54)
- 收藏
- 关注
转载 虚继承中出现C2512错误
class B{public: B(int i){}};class D1:public virtual B{public: D1(void):B(1){}};class D2:public virtual B{public: D2(void):B(1){}};class C:public virtual D1,publi
2012-06-16 10:07:32 876
转载 HttpWebRequest卡住的问题
从网上抓取点数据,其间要创建两个HttpWebRequest,第一个请求发送成功后,将服务端返回的Cookie记录下来给第二个HttpWebRequest使用.代码敲完了就执行吧,但请求到20次左右,总是会出现"请求超时"的错误,找了N久也没找到问题在哪里. 开始,我以为是服务端限制了请求数量,于是,找了些代理IP,每个HttpWebRequest分配一个WebProxy,但
2012-04-02 09:54:09 901
转载 XmlDocument.Load(Stream)时出现Root element is missing的问题
可能原因包括:xml内容是空的stream的position指向不对,这种情况经常出现在MemoryStream,由于Write之后,Position增加到了末尾,Read(也就是Load)之前需要先将Position设置成0参考http://www.cnblogs.com/koukai/archive/2008/04/30/1177106.html
2012-03-03 10:32:19 886
原创 函数对象/Functor/Function Object与接口Interface的选择问题
一般来讲,使用函数对象的场合可以用接口实现,而使用接口的地方也可以使用多个函数对象来实现,但有些情况使用一种比另一种更好。1,当多个调用紧密不宜分离,且希望通知到同一个接收者时,使用接口可以避免混淆。比如一个接口要接收的消息包括:连接成功、收到数据、接收超时、连接中断等消息,这些消息和某个连接相关联,一般来讲,需要同一个对象来处理。如果用函数对象,可能接收这些消息的对象很分散,是不良的设计
2012-02-29 15:56:07 280
转载 there are no arguments to '***' that depend on a template parameter, so a declaration of
linux下会出现如下错误:there are no arguments to '***' that depend on a template parameter, so a declaration of '***' must be available错误:‘×××’ 的实参不依赖模板参数,所以 ‘×××’ 的声明必须可用需要在×××之前增加范围标识,参考http://gcc.gn
2012-01-17 14:41:07 3154
转载 SVN的Not authorized to open root of edit operation解
Subversion装了1.5.2版,乌龟SVN装的是1.5.1版本,可以通过乌龟正常访问到版本库,但当check out时却出现了"Not authorized to open root of edit operation"错误,上网搜索了一下,提供的解决版本如下: anon-
2011-09-28 11:00:56 1310
原创 STATIC控件无法接收WM_MOUSEMOVE,WM_LBUTTONDOWN,WM_LBUTTONUP的问题
发现这些消息都发送给了父窗口,那么说明STATIC控件缺少一个样式,是SS_NOTIFY,这一点在MSDN上无法得到,SS_NOTIFY的说明为:SS_NOTIFY Sends the parent window STN_CLICKED,STN_DBLCLK, STN
2011-09-02 19:53:39 725
转载 java -jar时始终出现java.lang.NoClassDefFoundError,-cp和-classpath无效
应该是oracle的java虚拟机bug,当使用-jar时,-cp和-classpath无效。要设置jar包依赖,需要在导出jar包时,在menifest文件中手动添加依赖项,内容为:Class-Path: 被依赖的jar
2011-08-20 21:15:33 893
原创 const变量被编译器自动优化为const引用变量,delete危险
T* pb=new T();const T a=*pb;//a 被编译器优化为const T& a=b;delete pb;//错误
2011-08-03 10:12:12 262
原创 linux静态库AR陷阱,导致新程序无效
在使用ar -ru命令时,静态库中的老的目标文件是不会被删除的,当新目标文件不能覆盖老目标文件时(比如文件名变更),则老程序和新程序同时存在,此时可执行文件连接该静态库时,或许会使用老程序,或许使用新程序,连接器没有警告或异常,而且不同的可执行程序使用新老版本也不固定。解决办法是在ar -ru之前,一定要先rm掉静态库。
2011-04-14 13:13:00 378
转载 Visual Studio 2010 Service Pack 1安装失败的处理办法
<br />The problem solved after removing .NET4 with this utility:<br />http://blogs.msdn.com/b/astebner/archive/2008/08/28/8904493.aspx<br />and installing .NET 4. Those two KB installed successfully, and VS2010SP1 too. Thanks.<br /> <br />原帖:http://social.
2011-04-11 10:04:00 1953
原创 编写跨平台程序的关键,C/C++中的内置宏定义
<br />分两部分:<br />操作系统判定:<br />Windows: WIN32<br />Linux: linux<br />Solaris: __sun<br />编译器判定:<br />VC: _MSC_VER<br />GCC/G++: __GNUC__<br />SunCC: __SUNPRO_C和__SUNPRO_CC
2011-04-02 13:54:00 1568
原创 Sun CC中connect/recv/send等函数对于非阻塞non-blocking的socket返回-1,errno为EAGAIN和ETIMEDOUT
<br />经测试发现。<br />1.尽管文档中未提及EAGAIN,但的确返回了这个,和EINPROGRESS含义一样。<br />2.ETIMEDOUT貌似并不能认为连接就失败了,含义貌似和EINPROGRESS也一样。
2011-03-23 18:32:00 943
原创 SUN CC编译器库构造函数、静态对象内存构建、静态对象的构造函数、main函数的顺序问题。
<br />注意:这个顺序和g++的可能是不同的。<br />顺序是:<br />1.分配静态对象的内存空间<br />2.调用库构造函数(__attribute__((constructor))声明的函数)<br />3.调用静态对象的构造函数<br />4.执行main函数<br /> <br />总结:在库构造函数里不要使用任何静态对象,因为还没有执行构造函数。:(
2011-03-23 18:22:00 331
原创 JForum使用GBK编码MYSQL数据库时的中文乱码问题
<br />在安装过程中都设置得很好,可是实际发帖后就是乱码了。<br />解决办法:找到WEB-INF/config/jforum-custom.conf文件,在里面找到如下两行,填写即可。<br />mysql.encoding=&characterEncoding/=GBK<br />mysql.unicode=&useUnicode/=true<br /> <br />参考:http://hi.baidu.com/sitoto/blog/item/f62cca11c2228a14b8127b5f
2010-12-07 14:50:00 801
原创 关于Windows与Linux下32位与64位开发中的数据类型长度的一点汇总
<br />32位与64位的数据类型长度是不一样的,而且windows和linux也有些许区别,下面把64位下的数据长度列表如下(无符号unsigned和有符号的长度一样):<br /> <br /> linux64 windows64 linux32 windows32<br />char 8 8 8
2010-11-06 20:22:00 1814
原创 64位下SetWindowLong时的参数GWL_WNDPROC undeclared identifier未定义的错误
<br />这应该是微软的bug,使用GWLP_WNDPROC代替GWL_WNDPROC可解决问题。<br /> <br />原帖地址:http://www.allegro.cc/forums/thread/592764
2010-11-06 20:13:00 2122 1
转载 VS05使用Word自动化的问题解决方案
Compiling...1>DlgProxy.cpp1>g:/my document/visual studio 2005/projects/word/word/capplication.h(3) : warning C4278: 'ExitWindows': identifier in type library 'C://Program Files//Microsoft Office//OFFICE11//MSWORD.OLB' is already a macro; use the 'ren
2010-06-25 16:26:00 952
原创 更换动态库后一直报内存错误
<br />找了一个小时没有找到问题所在,一直在stl里报内存错误,基本不可调试,运行时说glib发现内存错误free什么什么的一大堆。valgrind也报一大堆错误,但是所指的位置看不出什么毛病。<br />原来问题出在一个静态库上,程序依赖一个so和一个a,而那个a又依赖这个so,so换了之后程序重编过,但是a没有重编,导致了这个问题,重编a解决问题。
2010-06-24 17:37:00 277
转载 已安装Bugzilla的计算机ip更换后,Bugzilla参数的更改
<br />原本机ip地址为192.168.1.117<br />后因单位网络的ip重新分配导致ip地址更换为192.168.1.29<br />此时可以输入192.168.1.29打开bugzilla主页面,但输入用户名后无法登陆。<br />1) /bugzilla/data/params 文件使用记事本打开<br />2) 更改参数'urlbase'=> 'http://192.168.1.117' 为 数'urlbase'=> 'http://192.168.1.29'
2010-06-08 15:51:00 665 1
原创 windows下重定向cvs服务器地址的一种方法
打开命令行窗口,到工程目录下,执行find . -name Root -exec sed -i s/原IP/新IP/ {} ; 这里的find和sed需要到gnuwin32下载,具体地址如下:http://gnuwin32.sourceforge.net/packages/findutils.htmhttp://gnuwin32.sourceforge.net/packages
2010-04-08 11:43:00 264
原创 AcceptEx后无法通过getpeername获得远端信息,返回错误码WSAENOTCONN 100057
其实这个错误码纯属微软误导我们,这个socket是连接上的。寻找原因,发现如下一段话,不在getpeername的文档里,而在AcceptEx的文档里,晕菜。 When the AcceptEx function returns, the socket sAcceptSocket is in the default state for a connected socket. T
2010-02-10 10:20:00 1143
原创 原型在程序中的另一种解释与应用
在面向对象中,多态是一种奇妙的东西,我们很方便的让一个方法得到不同的实现,例如获取对象的类型名称。但是当我们需要列举所有的类型名称的时候,问题变得棘手起来,我们即便知道有哪些类型,但是不能获得类型的名称,因为获取类型名称的方法不是静态的。这时候,我们需要的就是一个原型,所谓原型,在这里可以理解为类的一个对象,但是它不会用于正途,是一个原型,一个标本,一个样板,我们只是想要获取类型的名称,那么使
2010-02-08 17:56:00 203
转载 Three Ways to Inject Your Code into Another Process
IntroductionSeveral password spy tutorials have been posted to The Code Project,but all of them rely on Windows hooks. Is there any other way to makesuch a utility? Yes, there is. But
2010-02-08 13:22:00 264
翻译 Function Objects/Functors函数对象及优势
A function object, or functor, is any type that implements operator(). This operator is referred to as the call operator or sometimes the application operator. The Standard Template Libr
2010-02-02 15:13:00 204
转载 CreateThread()、_beginthread()以及_beginthreadex()联系与区别
联系:CreateThread、_beginthread和_beginthreadex都是用来启动线程的。区别:_beginthread是_beginthreadex的功能子集,_beginthreadex是微软的C/C++运行时库函数,CreateThread是操作系统的函数。虽然_beginthread内部是调用_beginthreadex但他屏蔽了象安全特性这样的功能,所
2010-02-02 14:00:00 238
转载 map以及hash_map的常用操作简介
STL map常用操作简介 1。目录 map简介 map的功能 使用map 在map中插入元素 查找并获取map中的元素 从map中删除元素 2。map简介 map是一类关联式容器。它的特点是增加和删除节点对迭代器的影响很小,除了那个操作节点,对其他的节点都没有什么影
2010-02-02 13:38:00 359
原创 mysql复制(Replication)模式-主从(Master-Slave)模式
主从模式的特性就是一台服务器作为主服务器,其余服务器作为从服务器,主服务器接收增删改查的操作,从服务器只能接收查的操作。主服务器将数据更新至从服务器是异步的,异步的优点是可以在服务器空闲期间进行同步,而不必占用紧缺的资源,缺点就是从服务器的数据很可能不是最新的。 只能应用于对数据同步要求不高的场合,如:负载分担-主服务器只做增删改,从服务器分担查询负载数据安全-从服务器不能进行
2010-02-02 12:56:00 416
原创 应用程序正常初始化(0xc01500002)失败
工程中包含了多余的manifest,生成的dll会包含ID号为2的名为RT_MANIFEST的资源,造成程序无法加载,删除多余的manifest文件重新编译即可。 如果不是自己做的,用VS打开dll然后把ID号改成1即可。
2010-01-29 16:45:00 3397
转载 检查页面各种大小的javascript
var tempstr ="网页可见区域宽:"+ document.body.clientWidth;tempstr += "/r/n网页可见区域高:"+ document.body.clientHeight;tempstr += "/r/n网页正文全文宽:"+ document.body.scrollWidth;tempstr += "/r/n网页正文全文高:"+ d
2009-12-30 15:59:00 286
原创 刷新YUI的DataTable的方法
YUI的DataTable并没有提供刷新当前页数据的方法,需要如下的程序:1.如果获得了数据的XML,使用如下程序刷新。 Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE
2009-12-18 14:49:00 571
转载 Linux下如何更改已保存的CVS用户名
find . -regex .*CVS/Root -print0 | xargs -0 perl -p -i.orig -e "s/原用户名:原密码/新用户名:新密码/;" 参考http://203.208.39.132/search?q=cache:bQ2YzDTKKzYJ:www.worldforge.org/doc/faq/cvs+cvs+change+user&cd=1&hl=zh
2009-12-10 13:37:00 523
原创 没有头部的XML字符串转化成DOM的编码问题
不处理会报错,方法有三:第一,用程序添加头部字符串拼接到xml字符串之前,里面包含正确编码;第二,parse的时候将string.getBytes("UTF8")增加参数"UTF8",DocumentBuilder默认的编码是UTF8,所以给他UTF8就是了;第三,使用Transformer,设置source是StreamSource,设置Result是DOMResult,设置enco
2009-12-07 17:30:00 395
转载 css实现强制不换行/自动换行/强制换行
强制不换行div{white-space:nowrap;}自动换行div{ word-wrap: break-word; word-break: normal; }强制英文单词断行div{word-break:break-all;}源地址:http://www.iwms.net/n1919c40.aspx
2009-12-04 13:48:00 177
原创 服务器可能的性能瓶颈及一般的优化方法
计算机的资源有限,各种资源均可造成性能瓶颈,包括CPU、内存、硬盘、网络、数据库、线程等,此外还有其他缓解方法,下面一一说明。一、CPU 1.检查程序逻辑,是否有CPU浪费。 2.空间换时间,常用的东西存储在内存里,不要每次都计算; 3.动态页静态化,空间换时间的一种,当然,如果你的动态页生成很简单很快很快,页面静态化反而慢了。 4.性能敏感处尽量不要
2009-11-25 13:54:00 349
原创 InstallShield做MSI窗口中图片Bitmap上的按钮PushButton显示异常,不显示或鼠标移入才显示
经过了无数次的尝试与分析,问题出在InstallShield的一个bug。我们知道,在IS的窗口编辑器里,设置控件的层次可以右键点击一个控件然后选择bring to front或者send to back来调整,表面上看的确有效果,而实际上编译出来的msi却不是IDE里显示的那么好,原因是bring to front和send to back根本毫无用处,在msi文件里没有任何的反应。再
2009-11-19 17:53:00 641
转载 Javascript 获取链接(url)参数的方法
作者: YITU.org 来源: YITU.org 点击: 0 --> 时间: 2007-02-26 10:34:58 有时我们需要在客户端获取链接参数,一个常见的方法是将链接当做字符串,按照链接的格式分解,然后获取对应的参数值。本文给出的就是这个流程的具体实现方法。当然,我们也可以用正则直接
2009-11-19 15:03:00 247
转载 ie & firefox 调用click不兼容解决
test1function t1() {alert(1);}var d=document.getElementById(’l1′);if(document.all){//ied.click();}else{//firefoxvar evt=document.createEvent(”MouseEvents”);evt.initEvent
2009-11-19 13:56:00 414
转载 InstallShield 如何去掉左下角的商标/去掉定制皮肤的商标
本来想把有关 InstallShiled 皮肤定制方面的东西写一篇小文,但经过几个小时的仔细钻研,决定放弃。最根本的理由是,我还是建议尽量使用 MSI。即便采用 InstallShield 来制作安装程序,也尽量采用 Basic MSI Project,而不要涉及太多 InstallShield 自己的东西。两个原因:1、MSI 兼容性更好比如,在设置了一定的安
2009-11-19 09:35:00 1567 2
原创 SetConsoleCtrlHandler后,在处理函数里PostQuitMessage()无效
When the signal is received, the system creates a new thread in the process to execute the function.当收到信号后,系统启动新的线程来执行处理函数。The PostQuitMessage function posts a WM_QUIT message to the thre
2009-11-11 15:45:00 716
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人