复制 BeanSpy 和通用发现文件

Microsoft.JEE.Copy.BeanSpy.WriteActionModuleType (WriteActionModuleType)

将全部四个 BeanSpy 文件以及通用发现脚本文件复制到系统临时文件夹。

Element properties:

TypeWriteActionModuleType
IsolationAny
AccessibilityPublic
RunAsDefault
InputTypeSystem.BaseData
OutputTypeSystem.BaseData

Member Modules:

ID Module Type TypeId RunAs 
CopyFiles WriteAction Microsoft.Windows.ScriptWriteAction Default

Source Code:

<WriteActionModuleType ID="Microsoft.JEE.Copy.BeanSpy.WriteActionModuleType" Accessibility="Public" Batching="false">
<Configuration/>
<ModuleImplementation Isolation="Any">
<Composite>
<MemberModules>
<WriteAction ID="CopyFiles" TypeID="Windows!Microsoft.Windows.ScriptWriteAction">
<ScriptName>JEECopyUserFiles.vbs</ScriptName>
<Arguments>"$FileResource[Name='Microsoft.JEE.ApplicationServer.BeanSpy.War']/Path$" "$FileResource[Name='Microsoft.JEE.ApplicationServer.BeanSpy.Ear']/Path$" "$FileResource[Name='Microsoft.JEE.ApplicationServer.BeanSpy.HTTP.NoAuth.war']/Path$" "$FileResource[Name='Microsoft.JEE.ApplicationServer.BeanSpy.HTTP.NoAuth.Ear']/Path$" "$FileResource[Name='Microsoft.JEE.PowerShell.Library']/Path$" "$FileResource[Name='Microsoft.JEE.PowerShell.Create']/Path$" "$FileResource[Name='Microsoft.JEE.PowerShell.Remove']/Path$"</Arguments>
<ScriptBody><Script>
''' Copyright (c) Microsoft Corporation. All rights reserved.
''' Date Created: Mar 16th, 2011
'
SetLocale("en-us")
'
' Copy a single file, if it exists, to specified folder
'
FUNCTION CopyAFile(userSuppliedWScript, userSuppliedFSO, targetDir, fileName)
IF userSuppliedFSO is Nothing THEN
SET myFSO = CreateObject("Scripting.FileSystemObject")
ELSE
SET myFSO = userSuppliedFSO
END IF
IF userSuppliedWScript is Nothing THEN
SET myWScript = WScript
ELSE
SET myWScript = userSuppliedWScript
END IF
IF userSuppliedFSO.FileExists(fileName) THEN
userSuppliedFSO.CopyFile fileName, targetDir
myWScript.Echo "Copied " &amp; fileName &amp; " to " &amp; targetDir
END IF
END FUNCTION
'
' Copy the specified four files to the system temp folder
'
FUNCTION CopyUserFiles(userSuppliedWScript, userSuppliedFSO, userSuppliedShell, file1, file2, file3, file4, file5, file6, file7)
IF userSuppliedWScript is Nothing THEN
SET myWScript = WScript
ELSE
SET myWScript = userSuppliedWScript
END IF
IF userSuppliedFSO is Nothing THEN
SET myFSO = CreateObject("Scripting.FileSystemObject")
ELSE
SET myFSO = userSuppliedFSO
END IF
IF userSuppliedShell is Nothing THEN
SET WshShell = CreateObject("WScript.Shell")
ELSE
SET WshShell = userSuppliedShell
END IF
SET WshSystemEnv = WshShell.Environment("System")
targetDir = WshShell.ExpandEnvironmentStrings(WshSystemEnv("TEMP")) &amp; "\"
CopyAFile myWScript, myFSO, targetDir, file1
CopyAFile myWScript, myFSO, targetDir, file2
CopyAFile myWScript, myFSO, targetDir, file3
CopyAFile myWScript, myFSO, targetDir, file4
CopyAFile myWScript, myFSO, targetDir, file5
CopyAFile myWScript, myFSO, targetDir, file6
CopyAFile myWScript, myFSO, targetDir, file7
END FUNCTION

Set oArgs = WScript.Arguments
if oArgs.Count &lt; 7 Then
Wscript.Quit -1
End If

CopyUserFiles Nothing, Nothing, Nothing, oArgs(0), oArgs(1), oArgs(2), oArgs(3), oArgs(4), oArgs(5), oArgs(6)
</Script></ScriptBody>
<TimeoutSeconds>300</TimeoutSeconds>
</WriteAction>
</MemberModules>
<Composition>
<Node ID="CopyFiles"/>
</Composition>
</Composite>
</ModuleImplementation>
<OutputType>System!System.BaseData</OutputType>
<InputType>System!System.BaseData</InputType>
</WriteActionModuleType>