2012-08-30 77 views
5

我們有一個Delphi 7應用程序運行在許多客戶機上。最近,一些客戶端機器開始使用Microsoft Security Essentials。它開始將我們的可執行文件識別爲惡意軟件並及時關閉它。通過MS安全要領顯示的信息是:Delphi 7應用程序和Microsoft Security Essentials

「Security Essentials的檢測你的電腦,它無法識別的物品......」

奇怪的是它並不總是發生在應用程序的相同選項。您可以在後續登錄時執行相同的操作,有時可以使用,而其他時間安全性要素可以關閉該操作。這使得在我們的應用程序中縮小到特定的原因非常困難。

我試着用提升的帳戶權限運行應用程序,但仍然能夠使其失敗。運行同一應用程序的Delphi XE2編譯時,我無法複製該問題。

有關尋找什麼的任何想法?我們確實試圖避免將我們的應用程序添加到Security Essentials排除列表中。我們的應用程序從未被認定爲各種安全程序(norton,mcaffee等)的問題。

+5

保證這一點不會發生的最簡單方法是使用具有MS接受的根的Authenticode證書(例如,verisign而不是自行發佈的)簽署您的二進制文件。 – Will

+1

您的應用程序是否動態加載dll或bpls?我問的原因是,你的描述不適合經典的「啓動時被阻止」的情況,在.exe中的簽名會觸發識別。你的情況似乎在執行期間稍後出現,似乎取決於所使用的選項。 –

+1

@這將不保證任何東西。 –

回答

2

我曾經有一個與使用Delphi(7)構建的可執行文件類似的問題,但它與Delphi-7無關。恰巧,可執行文件的某些部分與某些病毒簽名相匹配,或者AV啓發式掃描懷疑可執行文件有問題。您可以嘗試的一件事是更改一些編譯器設置,如調試選項。更改調試信息或使用調試DCU可能會導致最終可執行文件中的字節序列略有不同。

相關問題