连续试了HSS(Hekkus Sound System)和Tuny 2个sound library,都是这个错误,运行后在加载dll时就出错,stack trace:
K-Res
C++ Builder 2007用gdiplus时的一个问题
加了Gdiplus.h后,编译不能通过,提示[C++ Error] GdiplusGraphics.h(37): E2015 Ambiguity between ‘Gdiplus::Graphics::Graphics(void *)’ and ‘Gdiplus::Graphics::Graphics(void *,int)’
这个是CodeGear提到的一个已知问题:
Must Turn off NO_STRICT #define with GdiPlus library
The C++ library GdiPlus cannot be used in non STRICT mode, since it requires that Graphics::Graphics(HDC) be distinguishable from Graphics::Graphics(HWND). In non STRICT mode, both HWND and HDC are “void*”. Otherwise, you get the error:
[C++ Error] GdiplusGraphics.h(37): E2015 Ambiguity between ‘Gdiplus::Graphics::Graphics(void *)’ and ‘Gdiplus::Graphics::Graphics(void *,int)’
解决办法就是在Project->Options里的Paths and Defines的Conditional Defines里面加上STRICT,这样就开启了STRICT模式,那个歧义就可以消除了!
blog又挪地了
折腾了2天(有效折腾时间4小时)多,终于把blog从原来的csoft测试帐号搬到了正式帐号下,由于目录的变更导致了.htaccess里/mtview.php的路径错误,找了半天才发现这个问题,还麻烦了csoft tech部门的技术人员问了半天域名解析的问题,很快人家就帮忙把domain name的解析设好了,这服务真是好的一塌糊涂(发问到响应只有10分钟左右)。不容易啊,现在基本上搬家就算结束了……
给Together 2006 R2裝eclipse插件遇到的问题
插件装进去以后没反映,启动r2错误日志里也没有相关错误,最后发现原来需要删除configuration目录中除config.ini以外的其它文件,貌似原来eclipse装插件时也遇到过这种问题,失误了,还以为r2像Carbide.c++一样,T掉了很多eclipse默认的插件(比如jdt什么的),导致一些在eclipse里可以用的插件不能在这种eclipse里面用。
关于SWT画半透明时用gc的setAlpha
由于gc的setAlpha会自动打开Advanced模式,相当于调用了setAdvanced(true),而这项操作意味着需要调用native的gdiplus.dll的函数,所以发布的时候如果客户端没有这个dll,就会在setAlpha的时候出异常。
C++ Builder 2007开始提供试用下载了
今天回家收信收到了CodeGear寄来的一封信,说CB2007已经提供试用下载了,马上到网站上查看,原来是和D2007一样的下载安装方式,先是一个小exe,然后漫长的在线下载安装。囧,今天累了,明天再说吧,硬盘也没那么多地方了……
[ZT]在FastCGI下运行Movabletype(apache)
以前一直是在自己的机器(Win+Apache)下,现在换服务器了,FastCGI有了些变化,参考了一下这篇文章提供的设置方法,直接改了.htaccess
———————————————————————–
1月17日MovableType 3.34正式发布了,新功能如下:
修复了重要的潜在风险XSS缺陷
使FastCGI功能更易用,性能增长15倍
其中XSS缺陷得到修正,因此Six Apart鼓励所有MT用户进行升级。并且MT3.34会根据服务器的环境自动启用FastCGI,你仅需要简单的设置下mt-config.cgi,而不在需要手动修改程序。
同时集合FastCGI能让MT更能体现优势:
加载PNG时的CImageDecoder和AO
加载png时创建CImageDecoder和AO的具体过程(下面的方法在decode的同时还根据png的alpha生成了mask做透明操作,但是不支持半透明alpha混合…):
Symbian C++ 的内联ARM汇编
每次用C/C++就有用inline assembler的冲动,尤其是这次的CPU是ARM,不同的指令集不知会有多少的相似之处,直接用原来的__asm习惯写法,结果,GCCE编译报错,不做盲目的尝试,直接狗狗,立刻得到答案: