2012-05-09 20 views
8

此問題是否也適用於在終端服務器上運行的Delphi應用程序?Delphi應用程序和TSAWARE標頭標記

由於MSDN文章 「An Office 2007 or Office 2003 application that is running on an RD Session Host server may close unexpectedly in Windows Server 2008 R2」 解釋

此問題的原因Tsappcmd.dll成分的發生。此 組件對 應用程序的導入地址表(IAT)進行了更改,這些應用程序不是終端服務器可識別的,以防止 病毒或惡意軟件惡意掛鉤該應用程序。因爲 這,應用程序可能會遇到暫時內存損壞 ,因爲模塊的加載順序。 Office 2007和 Office 2003不包含TSAWARE標頭標誌。該標誌通知 服務器應用程序是終端服務器知道。

用戶環境中的某些Delphi 2009應用程序(Windows Server 2008 R2 Service Pack 1)經常掛起或崩潰。我正在尋找可能的原因,因爲這些掛起/崩潰無法複製。

MSDN文章似乎適用於Office產品第一,這是否正確或 - 注意,這裏是基本問題 - Tsappcmd.dll是否也修改非Office程序,因此Delphi應用程序可能會發生錯誤? (當然,如果缺少TSAWARE標誌不是有害的,我寧願保留Delphi應用程序)。

+1

使用map2dbg和Process Explorer的診斷,其中進程正在阻塞。 –

+4

[Howto](http://www.remkoweijnen.nl/blog/2007/11/24/delphi-and-terminal-server-aware/)設置TSAWARE標誌 –

+4

有趣的問題。另請參閱:http://stackoverflow.com/questions/4854534/what-does-an-application-have-to-do-in-order-support-remote-desktop-services –

回答

5

是Tsappcmd.dll會影響PE頭中沒有TSAWARE標誌的任何和所有程序。但這並不意味着所有這些應用程序都受此特定錯誤的影響。但是您可以通過設置TSAWARE標誌(請參閱TOndrej提供給我的博客的鏈接)或通過設置知識庫文章中提到的註冊表項來輕鬆測試。

PS:這是針對病毒保護的解釋似乎是一個虛假的說明,介紹了應用程序兼容性原因,該機制......