NT4 上的 MFC 应用程序中的增强
我正在尝试修改当前在 Windows NT4 上运行的 MFC 应用程序,以使用 boost 库进行以太网通信(最初,它使用 CommX 进行串行),并总体提高性能、效率和代码清晰度。
我开始在 VS2010 中修改它,但我发现我无法使用 VS2010 生成有效的 NT4 应用程序。我用 google 搜索了这个问题,发现 VS2005 是最后一个能够创建 NT4 应用程序的版本。我在 VS2005 中编译了所有内容,但发现我必须更改 stdafx.h 中的某些 #define 语句才能使应用程序在 NT4 上运行。然而,即使这样做之后,当我在 NT4 上执行该程序时,它会立即退出,没有错误。它没有显示任何东西。我什至在执行时检查了任务管理器进程。就像它根本没有被执行过一样。
我绝望了,尝试在 VS2003 中编译该应用程序,但出现了很多错误,所以我放弃了。
我最后一次尝试是 VC6,但我再次遇到了 262 错误,并开始怀疑 boost 是否可以在 VB6 或 NT4 机器上运行。
是否可以在 NT4 计算机上编译并运行带有 boost 库的 MFC 应用程序?如果是这样,我需要哪种环境/编译器以及如何配置它才能正常工作?
这是一个时间非常紧迫的项目,因此我们将非常感谢任何(及时)帮助!谢谢你!
I am trying to modify a current MFC application running on Windows NT4 to use boost libraries for ethernet communcications (originally, it used CommX for serial) and general increased performance, effieciency, and clarity of code.
I started out modifying it in VS2010, but I found that I was unable to produce a valid NT4 app with VS2010. I googled the issue and found that VS2005 was the last version able to create an NT4 app. I got everything to compile in VS2005, but found that I had to change certain #define statements in stdafx.h in order to get the app to run on NT4. However, even after doing that, when I execute the program on NT4, it immediately quits with no error. It doesn't show anything. I even checked the Task Manager processes while executing it. It is like it never executed at all.
I got desperate and tried compiling the app in VS2003, but I got so many errors that I gave that up.
My last attempt was VC6, but again, I got 262 errors and started wondering whether it was even possible for boost to run in VB6 or on an NT4 machine.
Is it even possible to compile and run an MFC app with boost libraries on an NT4 machine? If so, which environment/compiler do I need and how do I configure it to work correctly?
This is a very tight-schedule project, so any (prompt) help would be very appreciated! Thank you!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果您尝试使用 VC6 编译使用 Boost 的代码,您可能需要旧版本的 Boost。尝试 1.34.1。
If you're trying to use VC6 to compile code that uses Boost, you may need an older version of Boost. Try 1.34.1.
您可以尝试使用STLport作为标准库实现,而不是VC6附带的内置STL。我在 VC6 的 MFC 项目中成功使用了 boost 1.32 和 STLport 4.6.2。我还没有尝试升级到更新版本的 boost 或 STLport,但 STLport 可能足以让您继续前进。
You might try using STLport as the standard library implementation instead of the built-in STL that comes with VC6. I'm using boost 1.32 and STLport 4.6.2 successfully in VC6 with an MFC project. I haven't tried moving up to newer versions of boost or STLport, but STLport might be enough to get you going.