摘要: 这周遇到这样一个问题: 在win7下, 一个管理员权限的程序创建的named pipe, 不能被另外一个普通运行的程序使用CreateFile去连接。GetLastError发现是ERROR_ACCESS_DENIED.网上找来的代码, 创建出来的权限就是每一个人都可以访问的权限:SECURITY_ATTRIBUTES sa;SECURITY_DESCRIPTOR sd;InitializeSecurityDescriptor(&sd,SECURITY_DESCRIPTOR_REVISION);SetSecurityDescriptorDacl(&sd,TRUE,NULL,FA 阅读全文
posted @ 2012-05-26 11:03 yanjielong 阅读(406) 评论(0) 推荐(0) 编辑
摘要: 最近在chromium的代码里面发现了一个有意思的求写法数组个数的写法template <typename T, size_t N>char (&ArraySizeHelper(T (&array)[N]))[N];#define arraysize(array) (sizeof(ArraySizeHelper(array)))传统的做法就是#define(array) sizeof(array) / sizeof(array[0])据官方的说法的优点是,就是能在编译时判断array是不是定长数组,而不是指针。而明显传统的就不能了。ArraySizeHelper事实 阅读全文
posted @ 2012-02-21 21:21 yanjielong 阅读(458) 评论(0) 推荐(0) 编辑
摘要: 前言 有时候我会想能不能 : 有个统一的入口函数func(id, …), 只要输入id和不定参数args, 例如输入id_X,args_X, 就能调用到id_X对应的func_X,而且传入args_X给funcX 即: func(id_x, args_x) ==> func_x(args) 为什么我有这个想法呢? 例如: 我们的类工厂创建某些product的时候, 因为每一个类的构... 阅读全文
posted @ 2011-11-29 23:20 yanjielong 阅读(1165) 评论(0) 推荐(1) 编辑
摘要: 先来个线程类的代码 #include <windows.h>class Thread{ public: bool Start(); void End(); void Wait(); void AskForEnd(); public: Thread(); ~Thread(); private: HANDLE hThread;protected: bool running; private: st... 阅读全文
posted @ 2011-11-06 19:17 yanjielong 阅读(882) 评论(0) 推荐(0) 编辑
摘要: 前言 最近,有一同学给我发来一投票的链接,当然希望我帮他投某某的票了o(︶︿︶)o 我立马投了票, 再投第二下那时 限制了IP了~ 我却突然萌生一个想法, 如果我伪造TCP数据包, 伪造TCP头上的IP地址,不是可以想多少票,就多少票了~ PS:因为之前看过有关SYN攻击的描述,知道可以发出大量伪造的SYN数据包,使到服务器建立大量半连接,占用服务器的资源 先从简单的u... 阅读全文
posted @ 2011-10-29 23:48 yanjielong 阅读(11779) 评论(4) 推荐(4) 编辑