【发布时间】:2011-03-22 04:07:35
【问题描述】:
我想从开发者那里得到非常具体的回答,并想知道你是如何解决你所面临的问题的。
我们有非常大的 MFC (VC6) 32 位应用程序存在 10 年。现在我们想将它迁移到 .NET 非托管 64 位应用程序。这里我们有一些问题,我们的 UI 不应该改变,我们可能需要一些托管的 .NET 类以便于开发,在不影响架构的情况下如何添加托管代码和非托管代码,很多 win32 API 可能会更改为新的 API,应该运行XP、Vista、Windows 7 OS 机器没有任何变化,这些活动不应该是耗时的,新技术分析应该做,因为我们是 MFC 程序员......
请分享您的经验,如果您有任何明确的文件将非常有帮助...
注意: 为了清楚地理解,我再次重新表述一些观点。我们希望将我们的 VC6 本机代码 32 位应用程序迁移到具有 64 位支持的 VS2008(或 VS2010)本机代码(非托管 C++)。主要要求是现有 UI 不应该有任何变化。另外,如果.NET支持托管代码和非托管代码的组合,我们可以尝试在非托管C++环境中使用.NET远程处理等一些特性。我想向所有人传达的另一件重要的事情是,我们不会用 C# 或从头开始编写任何代码。
【问题讨论】:
-
您想用 C# 为 .NET 重写您的应用程序,还是只想让您的 MFC 应用程序在 Visual Studio 2008 中编译为 C++ 应用程序?
-
您要求对一个非常不具体的问题提供非常具体的答案。不知道在避免这种情况 10 年后会遇到什么。
-
@auujay:我认为 Snabak 指的是让 hte MFC 应用程序在 VS2008 中编译以及与 64 位支持相关的更改。用 C# 重写应用程序是不可能的,因为整个 KLOC 将达到 550 KLOC 左右。
-
它是 .NET 或非托管的。哪一个?将其保留为本机(非托管)C++,使其在 2010 年构建并利用更新的 MFC 是可行的。将其迁移到托管代码是完全不同的游戏。
-
朋友们...感谢您的 cmets。为了清楚地理解,我再次重新表述一些观点。我们希望将 VC6 本机代码 32 位应用程序迁移到支持 64 位的 VS2008(或 VS2010)本机代码(非托管 C++)。主要要求是现有 UI 不应该有任何变化。另外,如果.NET支持托管代码和非托管代码的组合,我们可以尝试在非托管C++环境中使用.NET远程处理等一些特性。我想向所有人传达的另一件重要的事情是,我们不会用 C# 或从头开始编写任何代码。
标签: c# .net winapi visual-studio-2010 mfc