谷歌搜索显示以下信息:
很好,所以一旦 Windows Defender 检测到它,它基本上会销毁该文件,当您尝试打开它时,Excel 会声称该文件已经 "被损坏"。我很想将我的 VBA 文件发布到 http://www.virustotal.com,但它包含大量无法与更广泛的社区共享的专有 VBA 代码。我想知道是否有一个网站可以用不同的条款和条件来完成相同的事情?
这只是最近才开始发生的事情,只影响了少数用户/客户。我不确定安装了这个程序的客户分布情况以及他们正在运行的Windows Defender版本。我担心这种影响会增加,直到我们的许多客户受到影响。更令人不安的是,通常情况下,客户可以无问题地下载一个版本,但当他们从其他来源下载文件(相同的VBA代码)时,就会遇到问题。下载源是否会影响文件被标记的可能性?主要问题:
是什么导致Excel VBA文件被标记为“O97M”病毒,如何防止其被标记?
相关问题:
如果我签署我的VBA宏,是否会影响病毒检测的可能性?
是否有其他常见做法可以改变误报的可能性?
什么是"Trojan:O97M/Foretype.A!ml"?窗口页面提供的信息非常少,甚至可以说根本不存在。Symantec也没有提供太多帮助(也许我在这里非常无知),是否有病毒检测的集中存储库?我想人们可能不想分享它,并且它可能因产品而异,但我对任何与此相关的信息都很感兴趣...
外部库
我还使用以下外部代码:
我还使用以下窗口函数:
Public Declare PtrSafe Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As LongPtr
Public Declare PtrSafe Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hWnd As LongPtr, ByVal nIndex As Long) As LongPtr
Public Declare PtrSafe Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As LongPtr, ByVal nIndex As Long, ByVal dwNewLong As LongPtr) As LongPtr
Public Declare PtrSafe Function GetWindowRect Lib "user32" (ByVal hWnd As LongPtr, lpRect As RECT) As LongPtr
Public Declare PtrSafe Function SetWindowPos Lib "user32" (ByVal hWnd As LongPtr, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As LongPtr
Public Declare PtrSafe Function SetParent Lib "user32.dll" (ByVal hWndChild As LongPtr, ByVal hWndNewParent As LongPtr) As LongPtr
Public Declare PtrSafe Function SetForegroundWindow Lib "user32" (ByVal hWnd As LongPtr) As LongPtr
Public Declare PtrSafe Function GetDeviceCaps Lib "gdi32.dll" (ByVal hdc As LongPtr, ByVal nIndex As LongPtr) As LongPtr
Public Declare PtrSafe Function GetDC Lib "user32.dll" (ByVal hWnd As LongPtr) As LongPtr
Public Declare PtrSafe Function ReleaseDC Lib "user32.dll" (ByVal hWnd As LongPtr, ByVal hdc As LongPtr) As LongPtr
Public Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Public Declare PtrSafe Function SetLastError Lib "kernel32.dll" (ByVal dwErrCode As Long) As Long
Public Declare PtrSafe Function GetActiveWindow Lib "user32.dll" () As Long
Public Declare PtrSafe Function DrawMenuBar Lib "user32" (ByVal hWnd As LongPtr) As Long