需要在Intranet上运行ASP.NET页面才能启动本地Windows应用程序(VB6 exe)。最初计划使用ActiveX控件,但ActiveX控件(真实和感知)的一般安全问题导致我们考虑使用ClickOnce方法解决问题。用户可以单击将启动ClickOnce应用程序的链接(ClickOnce应用程序将只是一个.NET Windows应用程序来启动VB6应用程序)。从安全角度来看,这是一个更好的解决方案吗?
答案 0 :(得分:1)
您是否有理由不能简单地发布要作为ClickOnce应用程序启动的应用程序?
发布ClickOnce应用程序时,它始终会检查服务器是否有任何更新,如果没有,则会启动应用程序的缓存安装。这与发布应用程序时生成的默认ClickOnce安装页面上的“启动”链接具有相同的效果。您可以发布应用程序,然后将启动链接中的URL复制到您的网站,以达到同样的效果。
我不建议您使用上述方法。我不知道您的具体情况,但显然,如果用户计算机上不存在VB6应用程序或者它位于不同的安装位置,您上面提到的ClickOnce应用程序将无法工作。
为了回应您的安全问题,我不是Active X专家,但如果从Intranet中使用ActiveX组件,我认为启动ActiveX组件不会有问题。事实上,我认为ActiveX的问题是当它启用时,恶意网站会注入有害的ActiveX病毒。我不是安全专家,所以我错了。但是,我很惊讶托管ActiveX服务会带来安全问题(假设您的代码合法;)