如果想用MFC,需要手工将MFC加入到系统中。
1:在VS2005目录下找到MFC DLL。在我的电脑上目录是D:/Program Files/Microsoft Visual Studio 8/VC/ce/Dll/x86。
因为我用的平台是基于CEPC,所以选择x86目录。
2:复制MFC DLL到%WINCE_ROOT%/OSDesigns/MFC目录。
将x86下的所有dll文件复制到MFC目录,MFC目录是自己创建的目录,也可以是其他名称。不是所有的dll文件都会用到,只是为了省事。
3:设置Custom Build Actions。打开平台的Property Pages,在Configration Properties的Custom Build Pages 的tab页中,将Build step下拉框中选中Pre-Make Image。
点击下面的New...按钮,在弹出的对话框中输入copy %_WINCEROOT%/OSDesigns/MFC/ %_FLATRELEASEDIR%/。
这里输入的是DOS命令,命令中可以使用Windows CE中设置的环境变量。上面的命令是把MFC目录下的dll文件拷贝到%_FLATRELEASEDIR%目录中,同样地,不是所有的dll文件都会用到。
4:修改配置文件。在Project.bib文件中把下面几句加进去,
MFC80U.DLL $(_FLATRELEASEDIR)/MFC80U.DLL NK SH
MFC80UD.DLL $(_FLATRELEASEDIR)/MFC80UD.DLL NK SH
MFC80ENU.DLL $(_FLATRELEASEDIR)/MFC80ENU.DLL NK SH
atl80.dll $(_FLATRELEASEDIR)/atl80.dll NK SH
msvcr80.dll $(_FLATRELEASEDIR)/msvcr80.dll NK SH
msvcr80D.dll $(_FLATRELEASEDIR)/msvcr80D.dll NK SH
如果想要在以后的操作系统设计中都用到这样的配置,可以加到Platform.bib文件中。
MFC80ENU.DLL是英文资源文件,根据你所使用的语言选择不同的资源DLL文件。
调试版DLL也可不必加入到操作系统镜像中,根据需要可以做具体修改。
5:构建。得到支持MFC的Windows Embedded CE6.0平台,运行后在/Windows目录下可以看到MFC的几个DLL文件。
如果已经创建了nk.bin文件,不想再花半个小时从头创建的话,可以把用到的MFC DLL文件直接拷贝到%_FLATRELEASEDIR%/下。
然后修改Project.bib文件,找到Project.bib,将其拷贝到%_FLATRELEASEDIR%/下。
在VS2005的Build菜单中,点击Open Release Directory in Build Window,打开命令行窗口,输入makeimg命令,创建nk.bin。
这个过程只要两三分钟的时间。