我正在尝试修改当前运行在Windows NT4上的MFC应用程序,以使用boost库进行以太网通信(最初,它使用CommX进行串行通信),并且总体上提高了性能,效率和代码的清晰度。
我开始在VS2010中修改它,但我发现我无法使用VS2010生成有效的NT4应用程序。我在谷歌上搜索了这个问题,发现VS2005是能够创建NT4应用程序的最后一个版本。我在VS2005中编译了所有内容,但发现我必须在stdafx.h中更改某些#define语句,以便让应用程序在NT4上运行。然而,即使在这样做之后,当我在NT4上执行程序时,它立即退出,没有任何错误。它没有显示任何东西。我甚至在执行任务时检查了任务管理器进程。就像从来没有执行过一样。
我绝望了,试着在VS2003中编译这个应用程序,但是我得到了很多错误,我放弃了。
我的最后一次尝试是VC6,但是再次,我得到262个错误,并开始怀疑是否有可能在VB6或NT4机器上运行boost。
是否有可能在NT4机器上编译和运行带有boost库的MFC应用程序?如果是这样,我需要哪个环境/编译器,以及如何配置它才能正确工作?
这是一个非常紧迫的项目,所以任何(提示)帮助将非常感激!谢谢你!
如果您试图使用VC6编译使用Boost的代码,则可能需要旧版本的Boost。尝试1.34.1。
您可以尝试使用STLport作为标准库实现,而不是VC6附带的内置STL。我在VC6和MFC项目中成功使用boost 1.32和STLport 4.6.2。我还没有尝试过升级到boost或STLport的新版本,但是STLport可能足以让您使用。