若要在遠端桌面服務環境中執行舊版應用程式,您可以使用遠端桌面服務應用程式相容性層。 當遠端桌面會話主機 (RD 工作階段主機) 伺服器載入非遠端桌面服務感知的應用程式時,也會載入包含相容性程式碼的 DLL。 若要使用遠端桌面服務應用程式相容性層,您可以在編譯應用程式時設定 NOT TSAWARE 旗標。
如果您的應用程式是遠端桌面服務感知,您可以避免載入此額外 DLL 並執行相容性程式代碼的額外負荷。
若要指出您的應用程式是遠端桌面服務感知,請在選擇性標頭中設定 IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE 旗標。 如果您使用隨附於 Microsoft Visual C++ 的連結器,您可以使用 TSAWARE 連結器選項來設定此旗標。 隨附Microsoft Visual C++ 隨附的 DUMPBIN 工具會提供 /HEADERS 選項,以判斷 TSAWARE 旗標的狀態。 如需使用 DUMPBIN 工具的詳細資訊,請參閱 DUMPBIN 參考。
當您使用 TSAWARE 旗標時請小心,因為它可讓應用程式略過任何遠端桌面服務相容性優化。 只有當您確定您的應用程式是針對遠端桌面服務環境所設計時,才應該使用 TSAWARE 旗標。 如果您的應用程式符合下列準則,您可以安全地使用 IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE 旗標。
- 應用程式不會使用 .ini 檔案。
- 應用程式不會在安裝期間寫入至 HKEY_CURRENT_USER。 如需詳細資訊,請參閱 儲存 User-Specific 資訊。
- 應用程式不會以系統服務的形式執行(也就是 LUID=System)。
- 應用程式不需要對 Windows 或其他系統目錄進行獨佔存取。 這表示應用程式不會將每個使用者暫存或設定資料儲存在 Windows 或其他系統目錄中。
- 應用程式不會寫入使用者特定數據或設定的 HKEY 本機電腦 登錄區。
- 應用程式會遵循本檔中提及的其他遠端桌面服務相容性指導方針。