How to add steps numbers to an MDT task sequence
In order to add steps numbers to the task sequence you will have to modify the ZTIUtility.vbs file.
Make a copy of the ZTIUtility.vbs , then in the original ZTIUtility.vbs replace the code mentioned below.
Original ReportProgress Function in ZTIUtility.vbs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
Public Function ReportProgress(sMsg, iPercent)
Dim iMaxPercent
Dim oProgress
Dim uStep
Dim uMaxStep
CreateEntry "Update progress [ " & iPercent & " ] : " & sMsg , LogTypeVerbose
' Try to create the progress UI object
On Error Resume Next
Set oProgress = CreateObject("Microsoft.SMS.TSProgressUI")
If Err then
Err.Clear
' Record the progress in the registry
oShell.RegWrite "HKLM\Software\Microsoft\Deployment 4\ProgressPercent", iPercent, "REG_DWORD"
oShell.RegWrite "HKLM\Software\Microsoft\Deployment 4\ProgressText", sMsg, "REG_SZ"
on error goto 0
Exit Function
End if
On Error Goto 0
' Update the progress
On Error Resume Next
iMaxPercent = 100
uStep = CLng(oEnvironment.Item("_SMSTSNextInstructionPointer"))
uMaxStep = CLng(oEnvironment.Item("_SMSTSInstructionTableSize"))
Call oProgress.ShowActionProgress(oEnvironment.Item("_SMSTSOrgName"), oEnvironment.Item("_SMSTSPackageName"), oEnvironment.Item("_SMSTSCustomProgressDialogMessage"), oEnvironment.Item("_SMSTSCurrentActionName"), (uStep), (uMaxStep), sMsg, (iPercent), (iMaxPercent))
If Err then
CreateEntry "Unable to update progress: " & Err.Description & " (" & Err.Number & ")", LogTypeInfo
ReportProgress = Failure
Err.Clear
Exit Function
End if
On Error Goto 0
' Dispose of the object
Set oProgress = Nothing
End Function
|
Modified ReportProgress Function in ZTIUtility.vbs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
Public Function ReportProgress(sMsg, iPercent)
Dim iMaxPercent
Dim oProgress
Dim uStep
Dim uMaxStep
'Region http://www.systanddeploy.com/2018/02/add-complete-progression-status-to.html
Dim uStatus, uStep_Division, uStep_Division_Round, uStep_Percent
'End Region
CreateEntry "Update progress [ " & iPercent & " ] : " & sMsg , LogTypeVerbose
' Try to create the progress UI object
On Error Resume Next
Set oProgress = CreateObject("Microsoft.SMS.TSProgressUI")
If Err then
Err.Clear
' Record the progress in the registry
oShell.RegWrite "HKLM\Software\Microsoft\Deployment 4\ProgressPercent", iPercent, "REG_DWORD"
oShell.RegWrite "HKLM\Software\Microsoft\Deployment 4\ProgressText", sMsg, "REG_SZ"
on error goto 0
Exit Function
End if
On Error Goto 0
' Update the progress
On Error Resume Next
iMaxPercent = 100
uStep = CLng(oEnvironment.Item("_SMSTSNextInstructionPointer"))
uMaxStep = CLng(oEnvironment.Item("_SMSTSInstructionTableSize"))
'Region http://www.systanddeploy.com/2018/02/add-complete-progression-status-to.html
uStep_Division = uStep / uMaxStep * 100
uStep_Division_Round = Round(uStep_Division)
uStep_Percent = uStep_Division_Round & " % completed"
uStatus = oEnvironment.Item("_SMSTSCurrentActionName") & " - " & " Step " & uStep & " on " & uMaxStep & " - " & uStep_Percent
Call oProgress.ShowActionProgress(oEnvironment.Item("_SMSTSOrgName"), oEnvironment.Item("_SMSTSPackageName"), oEnvironment.Item("_SMSTSCustomProgressDialogMessage"), uStatus, (uStep), (uMaxStep), sMsg, (iPercent), (iMaxPercent))
'End Region
If Err then
CreateEntry "Unable to update progress: " & Err.Description & " (" & Err.Number & ")", LogTypeInfo
ReportProgress = Failure
Err.Clear
Exit Function
End if
On Error Goto 0
' Dispose of the object
Set oProgress = Nothing
End Function
|