Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

362 lines
10 KiB

VERSION 5.00
Begin VB.Form frmExt
BorderStyle = 4 'Fixed ToolWindow
Caption = "Extension Information"
ClientHeight = 5400
ClientLeft = 1770
ClientTop = 1725
ClientWidth = 6135
ControlBox = 0 'False
LinkTopic = "Form1"
LockControls = -1 'True
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 5400
ScaleWidth = 6135
ShowInTaskbar = 0 'False
Begin VB.TextBox txtSourceFolder
Enabled = 0 'False
Height = 315
Left = 1755
TabIndex = 24
TabStop = 0 'False
Top = 2745
Width = 4305
End
Begin VB.TextBox txtExtensionFolder
Height = 315
Left = 1755
TabIndex = 5
Top = 2415
Width = 4305
End
Begin VB.TextBox txtOwner
Height = 315
Left = 1755
TabIndex = 2
Top = 1530
Width = 4305
End
Begin VB.CommandButton cmdCancel
Caption = "&Cancel"
CausesValidation= 0 'False
Height = 420
Left = 4080
TabIndex = 16
Top = 4890
Width = 975
End
Begin VB.CommandButton cmdOK
Caption = "&OK"
Height = 420
Left = 5070
TabIndex = 15
Top = 4890
Width = 975
End
Begin VB.CheckBox chkModifiesCab
Caption = "Executable Modifies Original CAB"
Height = 270
Left = 1755
TabIndex = 4
Top = 2175
Width = 3210
End
Begin VB.TextBox txtExecutable
Height = 315
Left = 1755
TabIndex = 3
Top = 1860
Width = 4305
End
Begin VB.Frame fraSKU
Caption = "SKU"
Height = 1575
Left = 1755
TabIndex = 17
Top = 3165
Width = 4305
Begin VB.CheckBox chkSku
Caption = "32-bit Standard"
Height = 255
Index = 0
Left = 150
TabIndex = 7
Top = 495
Width = 1695
End
Begin VB.CheckBox chkSku
Caption = "32-bit Professional"
Height = 255
Index = 1
Left = 150
TabIndex = 8
Top = 750
Width = 1695
End
Begin VB.CheckBox chkSku
Caption = "32-bit Server"
Height = 255
Index = 2
Left = 1920
TabIndex = 10
Top = 240
Width = 2055
End
Begin VB.CheckBox chkSku
Caption = "32-bit Advanced Server"
Height = 255
Index = 3
Left = 1920
TabIndex = 11
Top = 492
Width = 2055
End
Begin VB.CheckBox chkSku
Caption = "32-bit Datacenter Server"
Height = 255
Index = 4
Left = 1920
TabIndex = 13
Top = 996
Width = 2055
End
Begin VB.CheckBox chkSku
Caption = "64-bit Professional"
Height = 255
Index = 5
Left = 150
TabIndex = 9
Top = 1005
Width = 1695
End
Begin VB.CheckBox chkSku
Caption = "64-bit Advanced Server"
Height = 255
Index = 6
Left = 1920
TabIndex = 12
Top = 744
Width = 2055
End
Begin VB.CheckBox chkSku
Caption = "64-bit Datacenter Server"
Height = 255
Index = 7
Left = 1920
TabIndex = 14
Top = 1245
Width = 2055
End
Begin VB.CheckBox chkSku
Caption = "Windows Me"
Height = 255
Index = 8
Left = 150
TabIndex = 6
Top = 240
Width = 1320
End
End
Begin VB.TextBox Text2
Height = 1095
Left = 1755
MultiLine = -1 'True
TabIndex = 1
Top = 420
Width = 4305
End
Begin VB.TextBox txtDisplayName
Height = 315
Left = 1755
TabIndex = 0
Top = 75
Width = 4305
End
Begin VB.Label Label4
Caption = "Extension copied from:"
Height = 330
Left = 105
TabIndex = 23
Top = 2745
Width = 1725
End
Begin VB.Label Label5
Caption = "Extension copied to:"
Height = 255
Left = 105
TabIndex = 22
Top = 2415
Width = 1620
End
Begin VB.Label Label6
Caption = "Extension owner"
Height = 255
Left = 105
TabIndex = 21
Top = 1530
Width = 1380
End
Begin VB.Label Label3
Caption = "Executable name:"
Height = 285
Left = 105
TabIndex = 20
Top = 1860
Width = 1335
End
Begin VB.Label Label2
Caption = "Comment:"
Height = 345
Left = 105
TabIndex = 19
Top = 405
Width = 1050
End
Begin VB.Label Label1
Caption = "Display name:"
Height = 345
Left = 105
TabIndex = 18
Top = 75
Width = 1050
End
End
Attribute VB_Name = "frmExt"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Private m_oFs As Scripting.FileSystemObject
Private m_oHssExt As HssExt
Const MAX_SKUS = 8
Private m_aSkuIds(8) As String, m_ocollSkus As Scripting.Dictionary
Sub DropFile(n As Node, ByVal strFN As String, ByVal strOwner As String)
' Me.Caption = "Drop of: " & strFN
With Me
.txtExecutable.Text = m_oFs.GetFileName(strFN)
m_oHssExt.ExtensionFolder = m_oFs.GetParentFolderName(strFN)
.txtSourceFolder = m_oHssExt.ExtensionFolder
.txtExtensionFolder = HssX.txtExtensionsFolder + "\" + m_oFs.GetBaseName(.txtExecutable)
.Show Modal:=vbModal
End With
End Sub
Private Sub chkSku_Click(Index As Integer)
If (Me.chkSku(Index).Value = vbChecked) Then
If (Not m_ocollSkus.Exists(m_aSkuIds(Index))) Then
m_ocollSkus.Add m_aSkuIds(Index), m_aSkuIds(Index)
End If
Else
If (m_ocollSkus.Exists(m_aSkuIds(Index))) Then
m_ocollSkus.Remove m_aSkuIds(Index)
End If
End If
End Sub
Private Sub cmdCancel_Click()
Unload Me
End Sub
Private Sub cmdOK_Click()
On Error GoTo Error_Handler
' OK, now it's time to persist this guy to disk
' Here we create the New Extension Node...
' WE validate the SKUs here because it's useless before
m_oHssExt.ApplicableSkus = m_ocollSkus
m_oHssExt.SaveToDisk Me.txtExtensionFolder
Unload Me
Common_Exit:
Exit Sub
Error_Handler:
MsgBox Err.Description, vbInformation, Me.Caption
GoTo Common_Exit
End Sub
Private Sub Form_Activate()
' Stop
End Sub
Private Sub Form_Initialize()
Set m_oFs = New Scripting.FileSystemObject
Set m_oHssExt = New HssExt
m_aSkuIds(0) = "STD": m_aSkuIds(1) = "PRO": m_aSkuIds(2) = "SRV"
m_aSkuIds(3) = "ADV": m_aSkuIds(4) = "DAT"
m_aSkuIds(5) = "PRO64": m_aSkuIds(6) = "ADV64": m_aSkuIds(7) = "DAT64"
m_aSkuIds(8) = "WINME":
Set m_ocollSkus = New Scripting.Dictionary
' Stop
End Sub
Private Sub Form_Load()
' Stop
End Sub
Private Sub txtDisplayName_Validate(Cancel As Boolean)
Cancel = False
On Error Resume Next
m_oHssExt.DisplayName = Me.txtDisplayName
If (Err.Number <> 0) Then
MsgBox Err.Description, vbInformation, "Error Entering Data"
Cancel = True
End If
End Sub
Private Sub txtExecutable_Validate(Cancel As Boolean)
Cancel = False
On Error Resume Next
m_oHssExt.ExecutableName = Me.txtExecutable
If (Err.Number <> 0) Then
MsgBox Err.Description, vbInformation, "Error Entering Data"
Cancel = True
End If
End Sub
Private Sub txtExtensionFolder_Validate(Cancel As Boolean)
Cancel = False
Dim strExtFolder As String
strExtFolder = Trim$(Me.txtExtensionFolder)
If ((StrComp(HssX.txtExtensionsFolder, _
m_oFs.GetParentFolderName(strExtFolder), _
vbTextCompare) <> 0) _
) Then
MsgBox "Extension Folder MUST be a Sub-directory " + vbCrLf + _
"under Main extensions Directory", vbInformation, "Error Entering Data"
Cancel = True
GoTo Common_Exit
End If
Common_Exit:
Exit Sub
End Sub
Private Sub txtOwner_Validate(Cancel As Boolean)
Cancel = False
On Error Resume Next
m_oHssExt.Owner = Me.txtOwner
If (Err.Number <> 0) Then
MsgBox Err.Description, vbInformation, "Error Entering Data"
Cancel = True
End If
End Sub