如何在具有AFX_EXT_CLASS的MFC DLL上使用googletest

时间:2019-03-12 14:04:34

标签: mfc googletest

将单元测试添加到旧版业务应用程序。最终目标是将mfc放入薄包装中的因素。同时,我正在制作一个googletest项目,该项目使用mfc作为共享的dll,用于测试mfc dll中当前存在的内部类。

foo.h
#pragma once
class AFX_EXT_CLASS CFoo
    {
    public:
        CFoo();
        ~CFoo();
    ....
    private:
    ....
 };

 foo.cpp
 #include "foo.h"
 CFoo::CFoo() { .... }
 .....

我在预处理器上遇到了麻烦

foo.vcxproj: _USRDLL _AFXEXT  //mfc dll OK

foo.test.vcxproj: _AFXEXT //mfc exe builds OK. Runtime ERROR: process execution failed with exit code -1073741819

foo.test.vcxproj: _AFXDLL // mfc exe fails to build inconsistent DLL linkage.


foo.test.vcxproj: // mfc exe fails to build inconsistent DLL linkage.

googletest部分只是一个问题,因为它使用的是.dll中使用的.cpp以便在.exe中使用

任何建议都值得赞赏。

0 个答案:

没有答案