Leaked source code of windows server 2003
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.
 
 
 
 
 
 

340 lines
9.1 KiB

VERSION 5.00
Object = "{F9043C88-F6F2-101A-A3C9-08002B2F49FB}#1.2#0"; "COMDLG32.OCX"
Begin VB.Form frmMain
Caption = "ConvertToOem"
ClientHeight = 5445
ClientLeft = 270
ClientTop = 450
ClientWidth = 9390
LinkTopic = "Form1"
ScaleHeight = 5445
ScaleWidth = 9390
StartUpPosition = 3 'Windows Default
Begin VB.TextBox txtDatabase
Height = 285
Index = 1
Left = 1440
TabIndex = 7
Top = 480
Width = 7335
End
Begin VB.CommandButton cmdBrowse
Caption = "..."
Height = 255
Index = 1
Left = 8880
TabIndex = 6
Top = 480
Width = 375
End
Begin MSComDlg.CommonDialog dlgCommon
Left = 120
Top = 840
_ExtentX = 847
_ExtentY = 847
_Version = 393216
End
Begin VB.CommandButton cmdBrowse
Caption = "..."
Height = 255
Index = 0
Left = 8880
TabIndex = 2
Top = 120
Width = 375
End
Begin VB.TextBox txtDatabase
Height = 285
Index = 0
Left = 1440
TabIndex = 1
Top = 120
Width = 7335
End
Begin VB.TextBox txtOutput
Height = 3975
Left = 120
MultiLine = -1 'True
ScrollBars = 3 'Both
TabIndex = 5
Top = 1320
Width = 9135
End
Begin VB.CommandButton cmdClose
Caption = "Close"
Height = 375
Left = 8400
TabIndex = 4
Top = 840
Width = 855
End
Begin VB.CommandButton cmdGo
Caption = "Go"
Height = 375
Left = 7440
TabIndex = 3
Top = 840
Width = 855
End
Begin VB.Label lbl
Caption = "&Output database"
Height = 255
Index = 1
Left = 120
TabIndex = 8
Top = 480
Width = 1215
End
Begin VB.Label lbl
Caption = "&Input database"
Height = 255
Index = 0
Left = 120
TabIndex = 0
Top = 120
Width = 1215
End
End
Attribute VB_Name = "frmMain"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
' Make sure that these letters correspond to the Alt key combinations.
Private Const OPT_DATABASE_IN_C As String = "i"
Private Const OPT_DATABASE_OUT_C As String = "o"
Private Const OPT_LOG_FILE_C As String = "l"
Private Const OPT_CLOSE_ON_WARNING_C As String = "qw"
Private Const OPT_CLOSE_ALWAYS_C As String = "qa"
Private Const OPT_HELP_C As String = "h,?,help"
Private Enum DB_INDEX_E
DI_IN_E = 0
DI_OUT_E = 1
End Enum
Private Const MAX_DB_INDEX_C As Long = 1
Private p_strSeparator As String
Private p_blnWarning As Boolean
Private p_blnError As Boolean
Private p_clsSizer As Sizer
Private Sub p_DisplayHelp()
Dim str As String
str = "Usage: " & vbCrLf & vbCrLf & _
App.EXEName & " /i <Input database> /o <Output database> /l <Log file> /qw /qa" & vbCrLf & vbCrLf & _
"The /l, /qw, and /qa arguments are optional." & vbCrLf & _
"/qw makes the window go away even if there are Warnings." & vbCrLf & _
"/qa makes the window go away even if there are Errors and/or Warnings." & vbCrLf & _
"""" & App.EXEName & " /?"" displays this message."
Output str, LOGGING_TYPE_NORMAL_E
Output p_strSeparator, LOGGING_TYPE_NORMAL_E
End Sub
Private Sub Form_Load()
Dim strLogFile As String
cmdGo.Default = True
cmdClose.Cancel = True
Set p_clsSizer = New Sizer
strLogFile = GetOption(Command$, OPT_LOG_FILE_C, True)
SetLogFile strLogFile
Output "Version " & App.Major & "." & App.Minor & "." & App.Revision, LOGGING_TYPE_NORMAL_E
p_strSeparator = String(80, "-")
Output p_strSeparator, LOGGING_TYPE_NORMAL_E
p_ProcessCommandLine
End Sub
Private Sub p_ProcessCommandLine()
Dim strCommand As String
Dim blnCloseOnWarning As Boolean
Dim blnCloseAlways As Boolean
Dim blnClose As Boolean
strCommand = Trim$(Command$)
If (strCommand = "") Then
Exit Sub
End If
txtDatabase(DI_IN_E) = GetOption(strCommand, OPT_DATABASE_IN_C, True)
txtDatabase(DI_OUT_E) = GetOption(strCommand, OPT_DATABASE_OUT_C, True)
blnCloseOnWarning = OptionExists(strCommand, OPT_CLOSE_ON_WARNING_C, True)
blnCloseAlways = OptionExists(strCommand, OPT_CLOSE_ALWAYS_C, True)
If (OptionExists(strCommand, OPT_HELP_C, True)) Then
p_DisplayHelp
ElseIf (Len(strCommand) <> 0) Then
cmdGo_Click
If (p_blnError) Then
' If an error occurred, then close the window only if OPT_CLOSE_ALWAYS_C is specified.
If (blnCloseAlways) Then
blnClose = True
End If
ElseIf (p_blnWarning) Then
' If a warning occurred, but there was no error, then close the window only if
' OPT_CLOSE_ON_WARNING_C or OPT_CLOSE_ALWAYS_C is specified.
If (blnCloseOnWarning Or blnCloseAlways) Then
blnClose = True
End If
Else
' If there was no warning or error, then close the window.
blnClose = True
End If
If (blnClose) Then
cmdClose_Click
End If
End If
End Sub
Private Sub cmdBrowse_Click(Index As Integer)
On Error GoTo LError
dlgCommon.CancelError = True
dlgCommon.Flags = cdlOFNHideReadOnly
dlgCommon.Filter = "Microsoft Access Files (*.mdb)|*.mdb"
dlgCommon.ShowOpen
txtDatabase(Index).Text = dlgCommon.FileName
LEnd:
Exit Sub
LError:
Select Case Err.Number
Case cdlCancel
' Nothing. The user cancelled.
End Select
GoTo LEnd
End Sub
Private Sub cmdGo_Click()
On Error GoTo LError
Dim strDatabaseIn As String
Dim strDatabaseOUt As String
Output "Start: " & Date & " " & Time, LOGGING_TYPE_NORMAL_E
strDatabaseIn = Trim$(txtDatabase(DI_IN_E).Text)
strDatabaseOUt = Trim$(txtDatabase(DI_OUT_E).Text)
If ((strDatabaseIn = "") Or (strDatabaseOUt = "")) Then
Output "Please specify the Input and Output databases", LOGGING_TYPE_ERROR_E
GoTo LError
End If
Me.Enabled = False
MainFunction strDatabaseIn, strDatabaseOUt
LEnd:
Output "End: " & Date & " " & Time, LOGGING_TYPE_NORMAL_E
Output "The log file is: " & GetLogFileName, LOGGING_TYPE_NORMAL_E
Output p_strSeparator, LOGGING_TYPE_NORMAL_E
Me.Enabled = True
Exit Sub
LError:
GoTo LEnd
End Sub
Private Sub cmdClose_Click()
Unload Me
End Sub
Private Sub Form_Activate()
On Error GoTo LError
p_SetSizingInfo
DoEvents
LError:
End Sub
Private Sub Form_Resize()
On Error GoTo LError
p_clsSizer.Resize
LError:
End Sub
Private Sub p_SetSizingInfo()
Dim intIndex As Long
For intIndex = 0 To MAX_DB_INDEX_C
p_clsSizer.AddControl txtDatabase(intIndex)
Set p_clsSizer.ReferenceControl(DIM_RIGHT_E) = Me
p_clsSizer.ReferenceDimension(DIM_RIGHT_E) = DIM_WIDTH_E
p_clsSizer.AddControl cmdBrowse(intIndex)
Set p_clsSizer.ReferenceControl(DIM_LEFT_E) = Me
p_clsSizer.ReferenceDimension(DIM_LEFT_E) = DIM_WIDTH_E
Next
p_clsSizer.AddControl cmdGo
Set p_clsSizer.ReferenceControl(DIM_LEFT_E) = Me
p_clsSizer.ReferenceDimension(DIM_LEFT_E) = DIM_WIDTH_E
p_clsSizer.AddControl cmdClose
Set p_clsSizer.ReferenceControl(DIM_LEFT_E) = Me
p_clsSizer.ReferenceDimension(DIM_LEFT_E) = DIM_WIDTH_E
p_clsSizer.AddControl txtOutput
Set p_clsSizer.ReferenceControl(DIM_RIGHT_E) = Me
p_clsSizer.ReferenceDimension(DIM_RIGHT_E) = DIM_WIDTH_E
Set p_clsSizer.ReferenceControl(DIM_BOTTOM_E) = Me
p_clsSizer.ReferenceDimension(DIM_BOTTOM_E) = DIM_HEIGHT_E
End Sub
Public Sub Output( _
ByVal i_str As String, _
ByVal i_enumLoggingType As LOGGING_TYPE_E _
)
OutputToTextBoxAndWriteLog txtOutput, i_str, i_enumLoggingType
If (i_enumLoggingType = LOGGING_TYPE_ERROR_E) Then
p_blnError = True
ElseIf (i_enumLoggingType = LOGGING_TYPE_WARNING_E) Then
p_blnWarning = True
End If
End Sub