簡體   English   中英

我可以從WCF中打開客戶端的Windows資源管理器嗎?

[英]Can I open client's Windows Explorer from WCF?

早上好,我有以下情況:我有兩個項目的解決方案-第一個項目是MVC WebClient,第二個項目是WCF Service。 我想通過WCF 在特定位置打開Windows資源管理器 我知道純粹的客戶端是不可能的,所以我在考慮WCF是否可以做到。

完整方案是:用戶單擊按鈕,然后將打開Windows資源管理器。

我曾嘗試在本地計算機上執行此操作

Process.Start(path); 

它可以工作,但是如果我將其托管在IIS上怎么辦?

  1. 能行嗎
  2. 它會打開客戶端的資源管理器還是服務器的資源管理器?
  3. 如果前兩個步驟可以工作,我是否也需要在IIS上托管WCF服務,或者具有服務引用的MVC客戶端就足夠了?

並且,如果這種情況不起作用,任何人都可以為該問題提供一些解決方案(如果有的話)嗎?

非常感謝

我想完全通過瀏覽器執行此操作的唯一方法是要求客戶端使用IE,然后嵌入ActiveX控件。 該頁面必須以最高的安全特權運行,以便ActiveX可以不受阻礙地運行。 這樣做的好處是不需要太多(如果有)服務器端支持。 所有這些都將由Javascript處理。

否則,要使其與瀏覽器無關,您必須在客戶端計算機上運行一個偵聽器應用程序,可能作為一項服務或將其設置為在計算機啟動時啟動(任務欄上通知區域的理想選擇)。 客戶端計算機上的偵聽器應用程序可以使用WCF,套接字(無論您想要什么)建立與服務器的連接,然后當用戶按下WEB應用程序上的按鈕時,消息將從Web服務器發送到客戶端偵聽應用。 當然,這可能會觸發您想要在客戶端上執行的任何操作。

我也看到了一些並發症:

1)如何在客戶端計算機上安裝偵聽器?

2)您的Web應用程序現在需要與連接到客戶端偵聽器的服務器端組件進行通信。 如果您已經在服務器上使用WCF,則可能還不錯。 如果客戶端偵聽器連接到相同的Web應用程序,則用戶正在使用它可能也不會太困難(使用長輪詢或Web套接字等)。

3)如何保護客戶端偵聽器並將客戶端“會話”連接到Web“會話”,以便用戶單擊其Web瀏覽器中的按鈕,將消息發送到他的客戶端偵聽器實例而不是其他用戶的偵聽器。

這些都是可行的。 幾年前,我寫了一個類似這樣的應用程序。 肯定有挑戰,但是我們讓它起作用了,並且它已經穩定了好幾年了。 我們使用了WCF。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM