123456

 

2012年9月12日

LNK2005

摘要: 这个问题在编译Detours时遇到两次了,总结下:显示为:1.MSVCRT.lib(ti_inst.obj) : error LNK2005: "private: __thiscall type_info::type_info(class type_info const &)" (??0type_info@@AAE@ABV0@@Z) already defined in LIBCMTD.lib(typinfo.obj)2.MSVCRT.lib(ti_inst.obj) : error LNK2005: "private: class type_info & 阅读全文

posted @ 2012-09-12 17:38 hgy413 阅读(182) 评论(0) 推荐(0) 编辑

WOW64(判断32位程序运行在64位环境下)

摘要: WOW64 是 Windows-32-on-Windows-64 的缩写。它为现有的 32 位应用程序提供了 32 位的模拟,可以使大多数 32 位应用程序在无需修改的情况下运行在 Windows 64 位版本上。它类似于旧的 WOW32 子系统,负责在 Windows 32 位版本下运行 16 位的代码typedef BOOL (WINAPI *LPFN_ISWOW64PROCESS) (HANDLE, PBOOL);LPFN_ISWOW64PROCESS fnIsWow64Process;BOOL IsWow64(){ BOOL bIsWow64 = FALSE; fnIsWo... 阅读全文

posted @ 2012-09-12 13:27 hgy413 阅读(219) 评论(0) 推荐(0) 编辑

通过关键系统文件判断正确的操作系统版本

摘要: typedef struct tagTRANSLATION{ WORD langID; // language ID WORD charset; // character set (code page)} TRANSLATION;#define KeyFILENAMECHECK "\\kernel32.dll"DWORD GetVersionExFromFile(OSVERSIONINFOEX &osvi){ BOOL bOsVersionInfoEx; TCHAR szSysDir[MAX_PATH] = {0}; TCHAR szFileNa... 阅读全文

posted @ 2012-09-12 12:49 hgy413 阅读(445) 评论(0) 推荐(0) 编辑

rand和srand

摘要: 标准库 提供两个帮助生成伪随机数的函数: int rand(void); 从srand(seed)中指定的seed开始,返回一个[seed, RAND_MAX(0x7fff)间的随机整数。 void srand(unsigned seed); 参数seed是rand()的种子,用来初始化rand()的起始值。 可以认为rand()在每次被调用的时候,它会查看: 1) 如果用户在此之前调用过srand(seed),给seed指定了一个值,那么它会自动调用 srand(seed)一次来初始化它的起始值。 2) 如果用户在此之前没有调用过srand(seed),它会自动调用srand(1)... 阅读全文

posted @ 2012-09-12 11:02 hgy413 阅读(146) 评论(0) 推荐(0) 编辑

导航