分类于 代码人生 | 597 次点击 | 发表评论 »
由 Apex 发表于

最近因工作需要,要将一个几年前写的系统外壳扩展程序的功能作一些增强,于是顺便使用重构的技术,对以前的代码作了一些调整,并且使用STL(这里使用STLport实现)来管理其中的一些数据结构,用上了map,list之类的东东。结果问题出现了。

编译后,这个扩展动态库死活加载不了。后来使用dependency一看,怪了,居然需要依赖stlport_vc646.dll才能够运行。可是我都是使用静态链接的呀,而且如果是建立一个新的工程,同样使用STLport,却没有这样的依赖关系。

百思不得其解!

后来详细阅读STLport的文档,才发现,如果想要使用静态方式链接STLport的lib文件,使发行的动态库或者可执行文件不依赖STLport的动态库,需要在工程文件中设置_STLP_USE_STATIC_LIB的预定义。加上这个预定义后,问题解决。

 

但是到现在还是没有明白,为什么新创建的工程就不用设置也可以正常工作?理论上链接哪个lib文件,都是由STLport的配置文件在编译时就自动确定了的,不用再人为的设置。如果你知道为什么,请以告我,谢谢!

====================================================

还是自己搞明白了,原来的工程使用动态连接MFC的动态库,在选项中设置使用静态连接MFC的动态库,就不用设置_STLP_USE_STATIC_LIB定义了。估计是STLPort开发者为了简化使用者的设置,自动检测了连接MFC动态库的设置。

一定要心细啊!

分类于 代码人生 | 640 次点击 | 评论(1) »
由 Apex 发表于

[2006-10-11] 虽然不用Mambo来做自己的站点了,但是这篇文章仍然保留,可能能够帮助一些仍然还在使用Mambo的朋友~~~ 

Mambo中的RSS有点问题,因为我使用UTF-8作为字符集,但是发现订阅RSS时得到的数据都是乱码,于是到代码中看了看,修改了两个地方。

1.订阅RSS时,得到的RSS来源总是显示“Powered by Mambo 4.5.2”,这个的修改在\components\com_rss\rss.php中,将原来的“Powered by Mambo 4.5.2”改为“$mainframe->getPageTitle()”即可显示自己网站的名字(有两处地方)。

2.乱码问题的修改:在\includes\feedcreator.class.php中,将UniversalFeedCreator类的_setFormat()函数最后几行的

 if (!in_array($key, array("_feed", "contentType", "encoding"))) {

 改为

 if (!in_array($key, array("_feed", "contentType"))) {

即可(即去掉encoding的过滤,允许外部指定RSS的编码字符集)。

分类于 其他分类 | 750 次点击 | 评论(12) »
由 Apex 发表于

Chunk Lee 的 核子风暴 终于将其“汇编语言”连载告一段落,据言其下一步要开始进行“教导如何编写操作系统”的课程了。这也是我一直缠着他要学的东西。 :)

[题外话,Chunk Lee前两天刚刚领了结婚证,恭喜恭喜先~~~~]

早在半年前,我就缠着Chunk Lee要学习编写OS的知识了,他可是汇编/嵌入式系统/芯片设计方面的高手了,有这样的高手在身边,怎么可以放过!!

Chunk Lee烦不胜烦,于是给我出了一个题目:

阅读这篇日志的剩余部分 »

分类于 心情随笔 | 632 次点击 | 发表评论 »
由 Apex 发表于

“连瞎子都可以玩星际,还有什么做不到的?”

这是我观看了韩国一位盲人星际选手与韩国星际“人族皇帝”之间的一场表演赛后,由衷发出的感慨,并一度成为我的口头禅!感慨来自两个方面。

游戏开始时,两人都使用随机种族,结果“人族皇帝”运气好,使用拿手的人族,而盲人使用虫族。“人族皇帝”在前三分钟必须带上眼罩以示公平。虽然在二十多分钟的较量后,“人族皇帝”最终取胜,但是在前十五分钟,他一直是被盲人完全压制的,甚至在第六分钟和第十二分钟时几乎被盲人的虫海淹没,不得已将主基地飞起,才躲过大劫。(如果不是人族的基地可以飞,恐怕已经被灭了)

感慨之一:盲人完全靠战场上厮杀的声音来分辨对手的兵种和大体位置,并且判断出对手基地的位置,甚至成功的进行了一场小规模的埋伏战。对于我们这些明眼人来说,这简直就是不可能的,然而他却的的确确做到了。没有什么是不可能的,只要你有心去做。

感慨之二:暴雪的游戏开发得实在是太棒了。想想看,连一个盲人都能够操作,通过左右声道的临场音效甚至能够判断敌人的位置和兵种,这是怎样的程序!!这对一位写代码的人来说,真真正正说明了一件事情:没有什么做不到的,只有你想不到的!!

所以,还要努力啊!

分类于 代码人生 | 655 次点击 | 发表评论 »
由 Apex 发表于

久闻开源项目eGroupWare的大名,近几个月以来一直排在开源大本营sourceforge的前十名。于是抽空下载安装试用了一下。下面是我的简要试用报告。

作为如此活跃的开源项目,安装过程还是很简单的,只是在我这里还是遇到了麻烦。因为我将mysql的缺省字符集设置为UTF-8,以支持多语言,所以在安装eGroupWare时,就出现了关键字过长的错误,只好将mysql改为latin-1的字符集,然后重现安装eGroupWare。

安装完成后,复杂的界面,繁多的功能让人有些不知所措。eGroupWare真是“集大家之所长”啊!!包括类似XOop的站点内容管理,论坛,wiki,通讯簿,项目管理,日期管理(包括闹钟提醒等),内部短信通知,等等等等……总之,你想要的协作相关的功能这里几乎都有了!

我在里面漫游了近一个小时,还是没有搞明白到底怎么在实际的项目开发中用起来,这也难怪,eGroupWare的开发组为此专门写了一个书,放在Amazon销售,想必不是那么容易搞懂的。(或者卖书挣钱?……  :) )

先暂时这样吧,等有更多的时间再回来研究。

页面导航 (18/18)« 第一页...«1415161718