摘要:
今天凌晨,苹果举办了wwdc14,自然又成了各大网站的头条。尽管使用作为mac os的用户已经有接近10年时间,但是对苹果的开发平台却一直没什么了解,一方面是因为并不认可苹果的用户哲学,另一方面由于长期从事c++开发,对objective-c的语法也什么好感,甚至觉得怪异(个人感觉)。下午浏览新闻的... 阅读全文
摘要:
今天在fedora下编译cocos2dx工程时,遇到了链接问题,在libcocostudio中有大量未定义的libui函数,就像是cocostudio库没有添加ui库的链接依赖。该工程的确的用到了cocostudio和ui库,按说cocos2dx的默认cmake文件是不应该存在这样的问题才对。查看c... 阅读全文
摘要:
今天在调试代码的时候,碰到一个很奇怪的现象,一条简单的语句,执行结果就是不对。代码如下int pack_size = recbuffer[1] + (rec_buffer_[0] << 8)其中recbuffer为char类型,recbuffer[1]的值是0xd6,recbuffer[0]的值是0x01,预期的结果pack_size应为0x01d6。根据c++的算术运算隐式转换规则,recbuffer[1]和recbuffer[0]都会被提升为整型,pack_size = 0xd6 + 0x100, 而实际执行结果确是0xd6。令我百思不得其解。实在是没办法,将代码拆分为如下:i 阅读全文
摘要:
前一段时间,有个朋友过来问我关于802.1x的认证问题。具体的问题是这样的:在802.1x的认证过程中,使用Free Radius加LDAP实现认证服务器,使用LDAP的原因是对方要实现集中管理帐户,而为了保密原因,LDAP中存储的全部是MD5加密过后的密码,而且LDAP不能做任何修改。现在可供选择的认证方式有2种:pap和mschap。pap认证方式中,freeradius收到客户端发来的认证密码为明文,而mschap则为由NTPASSWORD(MD4加密)计算而来的challenge。而由于MD4和MD5均为不可逆的加密方式,有MD5密文无法得到明文,因此由LDAP中的MD5密文是无法计算 阅读全文
摘要:
今天使用C++/CLI封装一个native dll 其中使用了BOOST 库,编译过程完全没有问题,但是在.NET程序中加载时出现了0x800700C1的异常,出错信息是该DLL或该DLL的依赖项不是有效的Win32应用程序。而native dll是在正式产品中使用的,绝对没有问题。经过一番查找,发现是由于该dll引用了boost::thread造成的,随便编写一个使用boost::thread的dll,使用c++/cli封装后,加载就会出错。经过google,发现一下信息:在 http://www.eggheadcafe.com/microsoft/NET-Framework/3064242 阅读全文