运行可执行文件(.exe)可以使用非常简单的代码完成,如in this question所示。但是,我很少看到有人这样做,可能是有充分理由的。
我可以理解,它可能会对性能产生相当大的影响(在负面方向),但除此之外还有其他陷阱吗?正如我所看到的,一个好处可能是代码的清晰分离。
我有一个特定的案例,我必须制作一个打开IE的脚本,导航到一个URL并填写一个Web表单。然后将从主程序(在C#中创建)调用该脚本。因此,在这种情况下运行.exe文件的开销成本相对较小。其他人可以制作那些IE自动化脚本,甚至不知道我的代码是如何工作的。
我错过了什么吗?或者我真的有一个不错的主意吗?
答案 0 :(得分:2)
如上所述,启动其他程序的一个缺点是启动子程序需要多长时间。
另一个缺点是程序依赖于正确运行的其他程序。如果您启动的程序没有按预期运行,或者甚至根本没有启动,则更难以跟踪程序中的错误,甚至更难以处理任何故障。根据您正在创建的程序,如果子程序无法正常运行,它可能会变得无用。
兼容性可能是一个主要问题。您的程序可能与您正在调用的子程序不兼容,因此可能无法根据需要在它们之间传递这些数据。虽然您可以验证您的程序是否与目标计算机的操作系统兼容,但是评估您尚未创建的子程序与操作系统之间的兼容性更加困难。
如果您在程序的安装文件中包含您正在使用的任何子程序的副本,则许多这些问题都不是问题;但是,如果您的子项目不是由您创建的,则可能由于法律原因而无法实现。
同样,您可能无权使用您在程序中未创建的任何程序。
另一方面,有时利用现有程序非常有用,因为它可以为您节省大量时间。它也可以提供您无法自己创建的服务。在许多情况下,必须自己调用其他程序。