从asp.net运行网站,我需要将控制(焦点)转移到winforms应用程序。
如果应用程序没有运行,我知道我可以使用process.start()方法。
但是如果应用程序正在运行,我不想启动新窗口。
我可以选择将winform应用程序设置为唯一实例,但是如果它是外部应用程序呢?我的意思是,如果我不是作者,并且无法控制启动新实例......
如何在客户端计算机上找到给定窗口并从ASP.NET
激活它答案 0 :(得分:2)
出于安全原因,您无法做到。浏览器内的代码无权访问用户系统。
答案 1 :(得分:1)
如果浏览器是Internet Explorer,您可以托管.Hta page(或返回内容类型:application/hta)。
.Hta页面完全受信任,可以通过COM访问本地计算机上的所有内容。因此,如果您可以使用VBScript执行此操作,则可以在.Hta页面中执行此操作。
用户在下载之前必须信任此“应用程序”。如果这是一个Internet应用程序,您可能无法获得这种信任。如果这是Intranet应用程序,则可以强制用户信任该页面。
答案 2 :(得分:0)
我想如果这是你真正需要的一些功能,你可以沿着ActiveX路线走下去。虽然说它只能在IE中工作,并且需要一个单独的插件供firefox(或其他兄弟)运行。
老实说,虽然听起来有点像你想要达到的目标。