4

我的公司有一个最初为 Windows XP 开发的桌面应用程序。最初的程序员已经被解雇了(我可能会因极端偏见而被解雇)。我已经多次修复了该应用程序,但总体上尽量避免它,这是一团糟,修复它的唯一真正方法是完全重写它,这可能需要一年时间。

我们一直试图“忘记”这个应用程序,而是引导客户使用我们的 Web 版本,它更新得更及时、更易于维护、更易于扩展且更易于支持。大多数客户都同意,网络版本更好。

但是,我们有一位客户坚持使用桌面应用程序。该应用程序需要一点胶带才能在 Vista 上运行,但现在在 Windows 7 上完全中断。我什至不确定所有修复是什么让它在 Win7 上运行(当前时间估计处于“奇迹”)但在安装 RELEASE 构建并从 Visual Studio 运行 DEBUG 构建之后,该应用程序几乎在每个用户操作上都有错误,并且从我从高级测试运行中可以看到,它们都不相关。

由于在开发此应用程序时不存在 Windows 7,我的公司是否真的希望进行所有必要的更改以使其像在 XP 上一样“流畅”运行?

编辑:管理层想知道“支持新操作系统的行业规范是什么?” 因为我也没有一个很好的答案。

4

7 回答 7

6

很明显的问题,对不起,你试过http://www.microsoft.com/windows/virtual-pc/download.aspx

于 2010-05-20T14:42:29.607 回答
4

当然,每个案例都是不同的。但我想这主要取决于公司是否想继续销售/支持产品。

例如,即使星际争霸是 12 年前发布的,如果 Windows 7 出现并且星际争霸无法在它上面运行,我想暴雪会修复它。为什么?因为还在卖!不管它是否陈旧,如果您想让您的客户满意并继续获得新客户,您就会修复它。

另一方面,如果支持或销售产品不再有意义,一些公司只是决定在一段时间后放弃产品。例如,微软最近决定停止 MS Money。如果您已经拥有 MS Money,则可以继续使用它,但如果 MS 推出了新版本的 Windows(Windows 8?)并且您的旧版 MS Money 无法使用,那么您可能是 SOL。他们只是不再对它感兴趣了。

在这种特殊情况下,您正在向您的客户销售他们正在重新分发给客户的桌面产品。(你没有在你的问题中这么说,但我知道这是真的)。如果他们的客户不能毫不费力地使用该产品,那么该产品对他们来说毫无用处。下载此产品的消费者将逐渐转向 Windows 7,因此要使此程序继续对您的客户有用,您需要对其进行更新。所以你真正需要问的问题是:“拒绝更新这个程序值得激怒这个客户吗? ”。

但是,我不确定您是否与客户签订了支持协议。如果您的问题是“我们是否有义务将此程序升级到 Windows 7 兼容性,即使我们没有签署合同说明我们愿意并且他们没有向我们付款”,那么从法律上讲,我会说答案是否定的。如果您确实有支持协议,则以该协议的具体措辞为准。但很可能,如果您没有合同规定您将使应用程序与新操作系统兼容,那么您可能没有义务这样做。

提示:我建议在您的合同中指定您的产品将在哪些平台和操作系统版本上运行!

IANAL、TINLA

于 2010-05-20T15:10:17.403 回答
3

我个人的看法(作为用户、前 IT 专家和相当专业市场的开发人员):

如果它是您仍在销售和支持的产品,那么一般来说,客户可能希望您在合理的时间范围内支持新的操作系统。(“合理时间框架”的定义取决于您的客户——更专业的市场,或者升级操作系统速度较慢的客户,意味着您可以花更长的时间;更商品化的市场,或者更多前沿客户,意味着您可以一点也不长。)

如果您可以与您的客户一起解决问题,并且如果您处于更专业的市场(您面临的大众市场竞争较少),那么您可能能够推迟一段时间对新操作系统的支持. (例如,我们从来没有得到任何对 Vista 支持的真正需求,而且我敢肯定仍然存在仅支持 IE6 的 Web 应用程序。)但是,滞后太久可能会使您的公司看起来不专业或落后——速度。(至少当我在 IT 部门工作并且必须支持过时的应用程序时,这一直是我的职业。非技术客户很容易有不同的看法。)

正如其他人所说,关于您的具体问题,Windows 7 XP 模式是个好主意。

于 2010-05-20T15:01:40.537 回答
1

这是您和您的客户的问题。如果它们对你来说足够有价值,是的,如果不是,那就把它们剪掉。

于 2010-05-20T14:42:59.670 回答
1

Windows 7 XP 模式将是您最好的选择。

http://www.microsoft.com/windows/virtual-pc/download.aspx

大声笑花了很长时间发布此内容,但支持它在 XP 模式下运行,否则不值得支持开发新应用程序的成本。如果他想继续运行它,请将其置于 XP 模式。

视频也

http://www.microsoft.com/windows/virtual-pc/support/default.aspx

于 2010-05-20T14:51:01.370 回答
1

只是一个想法:“因为 Windows 7 不存在”不是在 Windows 7 上崩溃的好理由。作为客户,我希望应用程序在 Windows 7 上完美运行,如果它在 Windows XP 上完美运行的话。您不支持新的 Windows 7 功能很好,但崩溃通常意味着存在固有错误(例如写入程序目录中的文件 - 在 Windows XP 和 Windows Vista 中您不应该这样做)稍后,您甚至在家庭系统上也会停止)。对于应用程序不兼容的少数情况,我希望它能够得到修复。

这是我作为客户的想法。这是我的开发人员视图:

因此,不,您不需要进行更改以使其在 Windows 7 上运行。您应该首先编写程序以便它可以在 Windows 7 上运行,即使它是为 Windows XP 编写的。也就是说,即使您说它们不是,我也希望这些错误都是相关的,例如写入应用程序目录中的日志文件或在为任何 CPU 编译时加载 32 位 DLL,在 64 位上运行视窗。Windows 7 几乎在所有地方都与 Windows XP 兼容。

反正。如果在 Windows 7 上运行真的很重要,请告诉客户在 Windows XP 模式下运行应用程序,该模式适用于专业版和更高版本,因为已添加该内容,特别是针对某人(即公司)依赖 Windows XP 软件的情况无论出于何种原因,它都与 Windows 7 不兼容。因此,虽然它不是很好,但似乎很多自定义软件并不能在 Windows 7 上原生运行。特别是如果该应用程序有后继者并且不再受支持。

或者,好吧。您可以创建一个在 WebBrowser 控件中运行 Web 应用程序的应用程序,并告诉客户端它是新的桌面版本。也许他只是不想打开浏览器来使用您的应用程序。

于 2010-05-20T14:57:01.153 回答
1

是的,客户期望您在更高版本的 Windows 上支持您的产品是合理的。您的公司决定不再支持该产品也是合理的,冒着失去客户的风险。

但行业规范是什么并不重要,不是吗?您要么需要说服该客户切换到 Web 版本,让您的产品在 Windows 7 上运行,要么放弃该客户。

于 2010-05-20T15:03:20.353 回答