我在 Visual Studio 中有 C++ 代码,可以从 Windows API 调用一些函数。此代码是共享的,我不想对其进行太多更改,但我想在某些 Windows 函数返回错误时提供错误日志记录。我的计划是在某个命名空间 WinLog 的单独源文件中定义所有 Windows 函数的替代项,并强制共享代码调用我的函数而不是 Windows API 函数。所有共享代码都包含 stdafx.h 标头,如果我在该标头中添加这些行:
#include "WinLog.h"
using namespace WinLog;
然后共享代码将调用我的函数。我不关心头文件中的
using namespace
。但问题是现在编译器报告编译错误,例如“C2668:'SCardReleaseContext':对重载函数的模糊调用”。
如果我只更改 stdafx.h 中的某些内容,如何让共享代码调用我的函数?