存档

文章标签 ‘Windows2000’

VS2008 SP1 MFC程序在Windows 2000下提示找不到gdiplus.dll

2012年4月20日 没有评论

用Visual Studio 2008 SP1写了一个MFC程序,拿到Windows 2000下运行的时候提示找不到gdiplus.dll,这个程序确实不需要gdiplus.dll,但在导入表中确实有gdiplus.dll。就是SP1的补丁搞的鬼。

微软在Visual Studio 2008 SP1补丁发布时特地说明不要gdiplus.dll MFC程序也可以在2000下运行(Bugs fixed in MFC in Visual Studio 2008 SP1):

Running MFC applications on Windows 2000 (with or without GDIPlus.dll) is supported.
在CodeGuru上的一个帖子MFC and GDI+ problem上找到了解决方案:
把CProjectNameApp的基类从CWinAppEx改为CWinApp就行了,是要改动三处:

头文件ProjectName.h中类的定义:class CProjectNameApp : public CWinApp[......]

调试与反调试(二)——BeingDebugged

2011年4月21日 2 条评论

如果进程处于被调试状态,那么PEB里面的BeingDebugged标志会置位,《调试与反调试(一)——IsDebuggerPresent》中的IsDebuggerPresent就是这么实现的~不信?可以看网上流传的Windows 2000源代码,在“\win2k\private\windows\base\client\debug.c”里面可以看到,就是这么实现的:

BOOL
APIENTRY
IsDebuggerPresent(
VOID
)
 
/*[......]

继续阅读