据您所知,从共享的exe文件运行C#应用程序有什么问题吗?这是客户要求他们的20个客户在共享路径上运行相同的exe文件的请求
第一次测试没有显示问题,但长期不知道。我个人不喜欢这样,不要认为框架是在考虑到这一点的情况下开发的,但它们可以在需要时快速升级exe文件。
有什么可以阻止这个吗?
感谢
SAV
答案 0 :(得分:1)
首先考虑的是部署问题。在.NET 3.5 SP1之前,默认情况下不允许这样做,因为附带的安全策略以不太可信的方式处理网络位置。 .NET 3.5 SP1及更高版本,this is no longer the case。当然,如果您之前使用的是框架版本,那么您可以使用caspol modify this security policy来允许这样做。此外,一些更新版本的Windows may have additional security policies outside of .NET可以阻止从远程位置执行。
第二个考虑因素是确保应用程序的设计方式使其了解其环境,而不是假设环境与本地计算机相关(如果预期的话)(这可能会影响外部资源的解析和,视情况而定,可能导致资源争用或用户覆盖彼此的数据。)
第三是可用性。如果托管该可执行文件的服务器变得不可用(因意外断电,崩溃,遇到网络问题,重命名等),该怎么办?那可以接受吗?可执行文件有多大?如果它很大,那么会增加网络流量,无论如何都会导致可执行文件在通过网络调用时启动缓慢。
我认为对于琐碎的应用程序,这些问题可以忽略不计。但是,有很多方法可以在客户端计算机上安装和快速安装和更新应用程序,例如ClickOnce deployment。
答案 1 :(得分:0)
我们目前正在运行内部设计的软件。这将运行中央SQL数据库。每台计算机都设置有批处理程序,该程序通过Windows启动运行,并从中央服务器下载当前程序文件。因此,.exe运行在个人计算机上,而不是从服务器上运行。至少在我们的案例中,已经发现这是最有效的方法。