Windows-Server-2016

讓 Windows RemoteApp 使用客戶端應用程序打開文件(例如 .docx、.pdf)

  • February 17, 2022

我們成功地向我們的客戶端 PC 提供了託管在 Windows Server 2016 上的 Windows RemoteApp。

應用程序執行良好,列印被重定向到客戶端連接的列印機。很好。

然而,我們的 RemoteApp 允許使用者從 RemoteApp 中打開 .pdf 和 .docx 文件。截至目前,RemoteApp 似乎嘗試在遠端伺服器上打開這些文件。然而,我們不想在遠端機器上安裝這些應用程序(PDF Reader、MS Office,…)。因此,目前這些文件無法打開。

讓 RemoteApp 告訴客戶端機器用本地安裝的客戶端軟體打開該文件的機制是什麼?

RemoteApp 沒有開箱即用的解決方案。Citrix 部分提供。您需要使用第三方產品外掛,例如遠端文件傳輸。

如果您是開發人員,方法是創建一個在伺服器上執行的程序,當使用者點兩下文件文件(PDF、Excel、Word)時,該程序將通過 Virtual 將文件傳輸到客戶端(本地)機器Channel 然後向本地機器發送一個命令,用本地機器上的預設關聯程序打開文件。

我們採用的解決方法: 摘要:有一個本地應用程序等待文件到達本地文件夾,然後打開該文件。Remoteapp 通過內置的 \tsclient UNC 映射將文件發送到該本地文件夾

細節:

  1. 在每個本地桌面上,安裝一個文件夾監視應用程序。我們對 DevEnterprises Software 提供的免費版 Directory Monitory 非常滿意,但還有許多其他版本。
  2. 確保本地 C: 驅動器可用於 Remoteapp。在遠端桌面 .rdp 文件中,我們有這一行:drivestoredirect:s:C:;
  3. 每個桌面在其 c: 驅動器上都有相同的文件夾。例如c:\fromremote
  4. 在遠端應用程序中,我們想要在本地打開的文件被發送到路徑**\tsclient\c\fromremote**。例如,如果 Word 是遠端應用程序,讓它將文件保存到**\tsclient\c\fromremote\test.pdf**
  5. 配置目錄監視器以監視文件何時到達文件夾c:\fromremote
  6. 在本地電腦上創建一個批處理文件,當該文件到達監視文件夾時執行某些操作(並讓目錄監視器執行該批處理文件)。或者,如果它很簡單,請將 Directory Monitor 設置為 Execute: START 和 Parameter: %fullfile%。START 是用於打開任何內容的 Windows 內置命令,%fullfile% 是到達您監視文件夾中的文件的變數。因此,如果 test.pdf 到達文件夾 c:\fromremote,目錄監視器將執行:啟動 c:\fromremote\test.pdf,這將打開 Acrobat 以在本地桌面上查看該文件

引用自:https://serverfault.com/questions/886999