home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic 4 Power Pack / Visual_Basic4_Power_Pack.bin / vb4files / t2win_16 / t2win-16.frm (.txt) < prev    next >
Encoding:
Visual Basic Form  |  1996-11-20  |  273.3 KB  |  6,883 lines

  1. VERSION 4.00
  2. Begin VB.Form frmT2W 
  3.    BorderStyle     =   4  'Fixed ToolWindow
  4.    Caption         =   "TIME TO WIN (16-Bit Demo)"
  5.    ClientHeight    =   8115
  6.    ClientLeft      =   285
  7.    ClientTop       =   465
  8.    ClientWidth     =   9105
  9.    BeginProperty Font 
  10.       name            =   "MS Sans Serif"
  11.       charset         =   1
  12.       weight          =   700
  13.       size            =   8.25
  14.       underline       =   0   'False
  15.       italic          =   0   'False
  16.       strikethrough   =   0   'False
  17.    EndProperty
  18.    ForeColor       =   &H80000008&
  19.    Height          =   8460
  20.    Left            =   255
  21.    LinkTopic       =   "Form1"
  22.    MaxButton       =   0   'False
  23.    ScaleHeight     =   8115
  24.    ScaleWidth      =   9105
  25.    ShowInTaskbar   =   0   'False
  26.    Tag             =   "c"
  27.    Top             =   150
  28.    Width           =   9165
  29.    Begin VB.PictureBox Picture1 
  30.       AutoRedraw      =   -1  'True
  31.       AutoSize        =   -1  'True
  32.       BorderStyle     =   0  'None
  33.       Height          =   480
  34.       Left            =   8550
  35.       Picture         =   "T2WIN-16.frx":0000
  36.       ScaleHeight     =   480
  37.       ScaleWidth      =   480
  38.       TabIndex        =   0
  39.       Top             =   180
  40.       Visible         =   0   'False
  41.       Width           =   480
  42.    End
  43.    Begin VB.ComboBox Combo2 
  44.       Height          =   300
  45.       Left            =   6570
  46.       TabIndex        =   4
  47.       Top             =   450
  48.       Width           =   1185
  49.    End
  50.    Begin VB.TextBox Text1 
  51.       Height          =   285
  52.       Left            =   3150
  53.       TabIndex        =   10
  54.       Text            =   "Text1"
  55.       Top             =   7740
  56.       Width           =   5865
  57.    End
  58.    Begin VB.Frame Frame1 
  59.       Height          =   1455
  60.       Left            =   90
  61.       TabIndex        =   6
  62.       Top             =   6210
  63.       Visible         =   0   'False
  64.       Width           =   8925
  65.       Begin VB.ListBox List1 
  66.          Height          =   1200
  67.          Left            =   180
  68.          TabIndex        =   7
  69.          Top             =   180
  70.          Width           =   4155
  71.       End
  72.       Begin VB.ListBox List2 
  73.          Height          =   1200
  74.          Left            =   4590
  75.          TabIndex        =   8
  76.          Top             =   180
  77.          Width           =   4155
  78.       End
  79.    End
  80.    Begin VB.CommandButton Command1 
  81.       Caption         =   "&Start demo for the selected item"
  82.       Height          =   285
  83.       Left            =   90
  84.       TabIndex        =   2
  85.       Top             =   450
  86.       Width           =   4065
  87.    End
  88.    Begin VB.ComboBox Combo1 
  89.       Height          =   300
  90.       Left            =   90
  91.       TabIndex        =   1
  92.       Top             =   90
  93.       Width           =   7665
  94.    End
  95.    Begin VB.Label Label2 
  96.       Appearance      =   0  'Flat
  97.       BackColor       =   &H80000005&
  98.       BackStyle       =   0  'Transparent
  99.       Caption         =   "&Text for string manipulation"
  100.       ForeColor       =   &H80000008&
  101.       Height          =   195
  102.       Left            =   90
  103.       TabIndex        =   9
  104.       Top             =   7785
  105.       Width           =   2985
  106.    End
  107.    Begin VB.Label Label1 
  108.       BackStyle       =   0  'Transparent
  109.       Caption         =   "&Iterations for speed test"
  110.       Height          =   195
  111.       Left            =   4320
  112.       TabIndex        =   3
  113.       Top             =   510
  114.       Width           =   2175
  115.    End
  116.    Begin VB.Label Label3 
  117.       BackStyle       =   0  'Transparent
  118.       BorderStyle     =   1  'Fixed Single
  119.       Height          =   5340
  120.       Left            =   90
  121.       TabIndex        =   5
  122.       Top             =   810
  123.       Width           =   8925
  124.       WordWrap        =   -1  'True
  125.    End
  126. Attribute VB_Name = "frmT2W"
  127. Attribute VB_Creatable = False
  128. Attribute VB_Exposed = False
  129. Option Explicit
  130. Option Base 1
  131. Dim Item       As Integer
  132. Dim ItemFile   As Integer
  133. Dim ItemMean   As Integer
  134. Const RandI = 32767
  135. Const RandL = 2147483647
  136. Const RandS = 1E+10!
  137. Const RandD = 1E+16
  138. Dim Tmp  As String
  139. Private Sub Combo2_Click()
  140.    Item = Val(Combo2.Text)
  141.    ItemFile = Val(Combo2.Text)
  142.    ItemMean = Val(Combo2.Text)
  143. End Sub
  144. Private Sub Command1_Click()
  145.    Static Flag    As Integer
  146.    If (Flag = True) Then Exit Sub
  147.    frmT2W.Tag = cGetIn(cEXEnameActiveWindow(), ".", 1)
  148.    cDisableFI Picture1
  149.    Flag = True
  150.    MousePointer = 11
  151.    Frame1.Visible = False
  152.    List1.Clear
  153.    List2.Clear
  154.    List1.FontBold = True
  155.    List2.FontBold = True
  156.    Label3.Caption = ""
  157.    DoEvents
  158.    Select Case Combo1.ListIndex
  159.       Case 0
  160.          Frame1.Visible = True
  161.          Call TestAddI
  162.       Case 1
  163.          Frame1.Visible = True
  164.          Call TestDeviationI
  165.       Case 2
  166.          Frame1.Visible = True
  167.          Call TestFillI
  168.       Case 3
  169.          Frame1.Visible = True
  170.          Call TestMaxI
  171.       Case 4
  172.          Frame1.Visible = True
  173.          Call TestMeanI
  174.       Case 5
  175.          Frame1.Visible = True
  176.          Call TestMinI
  177.       Case 6
  178.          Frame1.Visible = True
  179.          Call TestSetI
  180.       Case 7
  181.          Frame1.Visible = True
  182.          Call TestSumI
  183.       Case 8
  184.          Frame1.Visible = True
  185.          Call TestSortI
  186.       Case 9
  187.          Frame1.Visible = True
  188.          Call TestReverseSortI
  189.       Case 10
  190.          Call TestAddTime
  191.       Case 11
  192.          Call TestTimeBetween
  193.       Case 12
  194.          Call TestCheckTime
  195.       Case 13
  196.          Call TestHourTo
  197.       Case 14
  198.          Call TestWindowsIni
  199.       Case 15
  200.          Call TestWinINI1
  201.       Case 16
  202.          Call TestWinINI2
  203.       Case 17
  204.          Call TestWinINI3
  205.       Case 18
  206.          Call TestAllSubDir
  207.       Case 19
  208.          Call TestGetDriveCurrentDir
  209.       Case 20
  210.          Call TestGetDefaultCurrentDir
  211.       Case 21
  212.          Call TestChDir
  213.       Case 22
  214.          Call TestCountFiles
  215.       Case 23
  216.          Call TestCountDirectories
  217.       Case 24
  218.          Call TestKillFiles
  219.       Case 25
  220.          Call TestGetFullnameInEnv
  221.       Case 26
  222.          Call TestGetDiskSpace
  223.       Case 27
  224.          Call TestGetDiskUsed
  225.       Case 28
  226.          Call TestGetDiskFree
  227.       Case 29
  228.          Call TestKillDir
  229.       Case 30
  230.          Call TestRenameFile
  231.       Case 31
  232.          Call TestFileResetAllAttrib
  233.       Case 32
  234.          Call TestFileSetAllAttrib
  235.       Case 33
  236.          Call TestIsFileX
  237.       Case 34
  238.          Call TestSubDirectory
  239.       Case 35
  240.          Call TestUniqueFileName
  241.       Case 36
  242.          Call TestIsX
  243.       Case 37
  244.          Call TestOneCharFromLeft
  245.       Case 38
  246.          Call TestOneCharFromRight
  247.       Case 39
  248.          Call TestBlockCharFromLeft
  249.       Case 40
  250.          Call TestBlockCharFromRight
  251.       Case 41
  252.          Call TestCompact
  253.       Case 42
  254.          Call TestUncompact
  255.       Case 43
  256.          Call TestInsertChars
  257.       Case 44
  258.          Call TestRemoveBlockChar
  259.       Case 45
  260.          Call TestRemoveOneChar
  261.       Case 46
  262.          Call TestCompressTab
  263.       Case 47
  264.          Call TestExpandTab
  265.       Case 48
  266.          Call TestGiveBitPalindrome
  267.       Case 49
  268.          Call TestIsBitPalindrome
  269.       Case 50
  270.          Call TestInsertBlocksBy
  271.       Case 51
  272.          Call TestInsertBlocks
  273.       Case 52
  274.          Call TestResizeStringAndFill
  275.       Case 53
  276.          Call TestResizeString
  277.       Case 54
  278.          Call TestFilterBlocks
  279.       Case 55
  280.          Call TestFilterChars
  281.       Case 56
  282.          Call TestCheckChars
  283.       Case 57
  284.          Call TestChangeChars
  285.       Case 58
  286.          Call TestChangeCharsUntil
  287.       Case 59
  288.          Call TestReverse
  289.       Case 60
  290.          Call TestGetIn
  291.       Case 61
  292.          Call TestGetBlock
  293.       Case 62
  294.          Call TestCreateAndFill
  295.       Case 63
  296.          Call TestStringCRC32
  297.       Case 64
  298.          Call TestCompress
  299.       Case 65
  300.          Call TestEncrypt
  301.       Case 66
  302.          Call TestDecrypt
  303.       Case 67
  304.          Call TestFileCRC32
  305.       Case 68
  306.          Call TestLrc
  307.       Case 69
  308.          Call TestIsPalindrome
  309.       Case 70
  310.          Call TestCheckNumericity
  311.       Case 71
  312.          Call TestFill
  313.       Case 72
  314.          Call TestSetAllBits
  315.       Case 73
  316.          Call TestSetBit
  317.       Case 74
  318.          Call TestGetBit
  319.       Case 75
  320.          Call TestFindBitSet
  321.       Case 76
  322.          Call TestFindBitReset
  323.       Case 77
  324.          Call TestToggleBit
  325.       Case 78
  326.          Call TestToggleAllBits
  327.       Case 79
  328.          Call TestReverseAllBits
  329.       Case 80
  330.          Call TestReverseAllBitsByChar
  331.       Case 81
  332.          Call TestCreateBits
  333.       Case 82
  334.          Call TestAtoR
  335.       Case 83
  336.          Call TestRtoA
  337.       Case 84
  338.          Call TestCustomControls
  339.       Case 85
  340.          Call TestSwap
  341.       Case 86
  342.          Call TestMin
  343.       Case 87
  344.          Call TestMenuChange
  345.       Case 88
  346.          Call TestFilesSize
  347.       Case 89
  348.          Call TestClusterSize
  349.       Case 90
  350.          Call TestAscTime
  351.       Case 91
  352.          Call TestLanguage
  353.       Case 92
  354.          Call TestReadLanguage
  355.       Case 93
  356.          Call TestFileCmp
  357.       Case 94
  358.          Call TestFileCopy
  359.       Case 95
  360.          Call TestFileFilter
  361.       Case 96
  362.          Call TestFileFilterNot
  363.       Case 97
  364.          Call TestFileEncrypt
  365.       Case 98
  366.          Call TestFileCompressTab
  367.       Case 99
  368.          Call TestSplitPath
  369.       Case 100
  370.          Call TestFullPath
  371.       Case 101
  372.          Call TestMakePath
  373.       Case 102
  374.          Call TestMsgBox
  375.       Case 103
  376.          Call TestInpBox
  377.       Case 104
  378.          Call TestMixChars
  379.       Case 105
  380.          Call TestFileVersionInfo
  381.       Case 106
  382.          Call TestFileVersion
  383.       Case 107
  384.          Call TestFileLineCount
  385.       Case 108
  386.          Call TestFileToX
  387.       Case 109
  388.          Call TestBig
  389.       Case 110
  390.          Call TestBigNum
  391.       Case 111
  392.          Call TestSysMenuChange(LNG_FRENCH)
  393.       Case 112
  394.          Call TestSysMenuChange(LNG_DUTCH)
  395.       Case 113
  396.          Call TestSysMenuChange(LNG_GERMAN)
  397.       Case 114
  398.          Call TestSysMenuChange(LNG_ENGLISH)
  399.       Case 115
  400.          Call TestSysMenuChange(LNG_ITALIAN)
  401.       Case 116
  402.          Call TestSysMenuChange(LNG_SPANISH)
  403.       Case 117
  404.          Call TestFileMerge
  405.       Case 118
  406.          Call TestFileSR
  407.       Case 119
  408.          Call TestFileS
  409.       Case 120
  410.          Call TestPatternMatch
  411.       Case 121
  412.          Call TestPatternExtMatch
  413.       Case 122
  414.          Call TestMorse
  415.       Case 123
  416.          Call TestDriveType
  417.       Case 124
  418.          Call TestBaseConversion
  419.       Case 125
  420.          Call TestFileStatictics
  421.       Case 126
  422.          Call TestDAStr(True)
  423.       Case 127
  424.          Call TestDAL(True)
  425.       Case 128
  426.          Call TestDAType(True)
  427.       Case 129
  428.          Call TestDAStr(False)
  429.       Case 130
  430.          Call TestDAL(False)
  431.       Case 131
  432.          Call TestDAType(False)
  433.       Case 132
  434.          Call TestDAStr(1)
  435.       Case 133
  436.          Call TestDAL(1)
  437.       Case 134
  438.          Call TestDAType(1)
  439.       Case 135
  440.          Call TestDAStr(2)
  441.       Case 136
  442.          Call TestDAL(2)
  443.       Case 137
  444.          Call TestDAType(2)
  445.       Case 138
  446.          Call TestDAStr(3)
  447.       Case 139
  448.          Call TestDAL(3)
  449.       Case 140
  450.          Call TestDAType(3)
  451.       Case 141
  452.          Call TestDAStr(4)
  453.       Case 142
  454.          Call TestDAL(4)
  455.       Case 143
  456.          Call TestDAType(4)
  457.       Case 144
  458.          Call TestDAStr(5)
  459.       Case 145
  460.          Call TestDAL(5)
  461.       Case 146
  462.          Call TestDAType(5)
  463.       Case 147
  464.          Call TestDAStr(6)
  465.       Case 148
  466.          Call TestDAL(6)
  467.       Case 149
  468.          Call TestDAType(6)
  469.       Case 150
  470.          Call TestCloseAllEditForm
  471.       Case 151
  472.          Call TestHideAllEditForm
  473.       Case 152
  474.          Call TestHideDebugForm
  475.       Case 153
  476.          Call TestOrToken
  477.       Case 154
  478.          Call TestAndToken
  479.       Case 155
  480.          Call TestWalkThruWindow
  481.       Case 156
  482.          Call TestSerial
  483.       Case 157
  484.          Call TestTimer
  485.       Case 158
  486.          Call TestAlign
  487.       Case 159
  488.          Call TestToken
  489.       Case 160
  490.          Call TestArrayOnDisk
  491.       Case 161
  492.          Call TestArrayStringOnDisk
  493.       Case 162
  494.          Call TestCnvAE
  495.       Case 163
  496.          Call TestCombination
  497.       Case 164
  498.          Frame1.Visible = True
  499.          Call TestFileSort(SORT_ASCENDING + SORT_CASE_SENSITIVE, False)
  500.       Case 165
  501.          Frame1.Visible = True
  502.          Call TestFileSort(SORT_DESCENDING + SORT_CASE_SENSITIVE, False)
  503.       Case 166
  504.          Frame1.Visible = True
  505.          Call TestFileSort(SORT_ASCENDING + SORT_CASE_INSENSITIVE, False)
  506.       Case 167
  507.          Frame1.Visible = True
  508.          Call TestFileSort(SORT_DESCENDING + SORT_CASE_INSENSITIVE, False)
  509.       Case 168
  510.          Frame1.Visible = True
  511.          Call TestFileSort(SORT_ASCENDING + SORT_CASE_SENSITIVE, True)
  512.       Case 169
  513.          Frame1.Visible = True
  514.          Call TestFileSort(SORT_DESCENDING + SORT_CASE_SENSITIVE, True)
  515.       Case 170
  516.          Frame1.Visible = True
  517.          Call TestFileSort(SORT_ASCENDING + SORT_CASE_INSENSITIVE, True)
  518.       Case 171
  519.          Frame1.Visible = True
  520.          Call TestFileSort(SORT_DESCENDING + SORT_CASE_INSENSITIVE, True)
  521.       Case 172
  522.          Call TestRegistrationKey
  523.       Case 173
  524.          Call TestMD5
  525.       Case 174
  526.          Call TestProperName
  527.       Case 175
  528.          Call TestMatrixAdd
  529.       Case 176
  530.          Call TestMatrixSub
  531.       Case 177
  532.          Call TestMatrixCopy
  533.       Case 178
  534.          Call TestMatrixMul
  535.       Case 179
  536.          Call TestMatrixTranspose
  537.       Case 180
  538.          Call TestMatrixCompare
  539.       Case 181
  540.          Call Test2D
  541.       Case 182
  542.          Call Test3D
  543.       Case 183
  544.          Call TestProperName2
  545.       Case 184
  546.          Call TestDOSMediaID
  547.       Case 185
  548.          Call TestFileCompress
  549.       Case 186
  550.          Call TestStringCompress
  551.       Case 187
  552.          Frame1.Visible = True
  553.          Call TestFillIncrI
  554.       Case 188
  555.          Call TestMatrixDet
  556.       Case 189
  557.          Call TestMatrixInv
  558.       Case 190
  559.          Call TestMatrixMinCo
  560.       Case 191
  561.          Call TestMatrixSymToeplitz
  562.       Case 192
  563.          Call TestFloppyInfo
  564.       Case 193
  565.          Call TestDOSGetVolLabel
  566.       Case 194
  567.          Call TestAddTwoTimes
  568.       Case 195
  569.          Call TestMDA(True)
  570.       Case 196
  571.          Call TestMDA(False)
  572.       Case 197
  573.          Call TestMDA(1)
  574.       Case 198
  575.          Call TestMDA(2)
  576.       Case 199
  577.          Call TestMDA(3)
  578.       Case 200
  579.          Call TestMDA(4)
  580.       Case 201
  581.          Call TestMDA(5)
  582.       Case 202
  583.          Call TestMDA(6)
  584.       Case 203
  585.          Call TestDate
  586.       Case 204
  587.          Call TestVersion
  588.       Case 205
  589.          Call TestGetInR
  590.       Case 206
  591.          Call TestBigString01
  592.       Case 207
  593.          Call TestHMAStr(True)
  594.       Case 208
  595.          Call TestHMAL(True)
  596.       Case 209
  597.          Call TestHMAType(True)
  598.       Case 210
  599.          Call TestHMAStr(1)
  600.       Case 211
  601.          Call TestHMAL(1)
  602.       Case 212
  603.          Call TestHMAType(1)
  604.       Case 213
  605.          Call TestHMAStr(2)
  606.       Case 214
  607.          Call TestHMAL(2)
  608.       Case 215
  609.          Call TestHMAType(2)
  610.       Case 216
  611.          Call TestHMAStr(3)
  612.       Case 217
  613.          Call TestHMAL(3)
  614.       Case 218
  615.          Call TestHMAType(3)
  616.       Case 219
  617.          Call TestHMAStr(4)
  618.       Case 220
  619.          Call TestHMAL(4)
  620.       Case 221
  621.          Call TestHMAType(4)
  622.       Case 222
  623.          Call TestHMAStr(5)
  624.       Case 223
  625.          Call TestHMAL(5)
  626.       Case 224
  627.          Call TestHMAType(5)
  628.       Case 225
  629.          Call TestHMAStr(6)
  630.       Case 226
  631.          Call TestHMAL(6)
  632.       Case 227
  633.          Call TestHMAType(6)
  634.       Case 228
  635.          Frame1.Visible = True
  636.          Call TestArrayLB
  637.       Case 229
  638.          Call TestTime
  639.       Case 230
  640.          Call TestControl3D
  641.       Case 231
  642.          Call TestFileChangeChars
  643.       Case 232
  644.          Call TestFilesInfoInDir
  645.       Case 233
  646.          Call TestRcsCountFileDir
  647.       Case 234
  648.          Frame1.Visible = True
  649.          Call TestFilesInDirOnDisk
  650.       Case 235
  651.          Frame1.Visible = True
  652.          Call TestFilesInDirToArray
  653.       Case 236
  654.          Call TestRcsFilesSize
  655.       Case 237
  656.          Call TestMnuLanguage
  657.       Case 238
  658.          Call TestSpellMoney
  659.       Case 239
  660.          Call TestFraction
  661.       Case 240
  662.          Call TestRndX
  663.       Case 241
  664.          Call TestStringSAR
  665.       Case 242
  666.          Call TestTruncatePath
  667.       Case 243
  668.          Call TestSysMenuChange(LNG_CATALAN)
  669.          Call TestLanguage
  670.          SendKeys "% "
  671.       Case 244
  672.          Call TestSysMenuChange(LNG_POLISH)
  673.          Call TestLanguage
  674.          SendKeys "% "
  675.       Case 245
  676.          Frame1.Visible = True
  677.          Call TestCountI
  678.       Case 246
  679.          Frame1.Visible = True
  680.          Call TestSearchI
  681.       Case 247
  682.          Call TestHexaToX
  683.       Case 248
  684.          Call TestBinaryToX
  685.    End Select
  686.    MousePointer = 0
  687.    Flag = False
  688.    cEnableFI Picture1
  689. End Sub
  690. Private Sub CreateFile()
  691.    Dim j       As Integer
  692.    j = cFileResetAllAttrib("TEST.DAT")
  693.    Close #1
  694.    Open "TEST.DAT" For Output As #1
  695.    Print #1, "This is a file test for t2win-16.dll"
  696.    Print #1, "This is a file test for t2win-16.dll"
  697.    Print #1, "This is a file test for t2win-16.dll"
  698.    Print #1, "This is a file test for t2win-16.dll"
  699.    Print #1, "This is a file test for t2win-16.dll"
  700.    Print #1, "This is a file test for t2win-16.dll"
  701.    Print #1, "This is a file test for t2win-16.dll"
  702.    Close #1
  703.    j = cFileResetAllAttrib("TEST.DAT")
  704. End Sub
  705. Private Sub DefCnv()
  706.    Dim i       As Integer
  707.    Dim j       As Integer
  708.    Dim Tmp     As String
  709.    Close #1
  710.    Open "c:\tmp\tmp1.Tmp" For Input Shared As #1
  711.    Close #2
  712.    Open "c:\tmp\tmp.Tmp" For Output Shared As #2
  713.    i = 0
  714.    While Not EOF(1)
  715.       Line Input #1, Tmp
  716.       i = i + 1
  717.       Tmp = cCompress(Tmp)
  718.       Print #2, Tab(10); cGetIn(Tmp, "@", 1);
  719.       Print #2, Tab(60); "@" & i
  720.    Wend
  721.    Close #1
  722.    Close #2
  723. End Sub
  724. Private Sub Form_DblClick()
  725.    Call fct_Check_Date_In_CTIME
  726. End Sub
  727. Private Sub Form_Load()
  728.    Combo2.AddItem "1"
  729.    Combo2.AddItem "5"
  730.    Combo2.AddItem "10"
  731.    Combo2.AddItem "50"
  732.    Combo2.AddItem "100"
  733.    Combo2.AddItem "500"
  734.    Combo2.AddItem "1000"
  735.    Combo2.AddItem "5000"
  736.    Combo1.AddItem "Array routines : Add"
  737.    Combo1.AddItem "Array routines : Deviation"
  738.    Combo1.AddItem "Array routines : Fill"
  739.    Combo1.AddItem "Array routines : Max"
  740.    Combo1.AddItem "Array routines : Mean"
  741.    Combo1.AddItem "Array routines : Min"
  742.    Combo1.AddItem "Array routines : Set"
  743.    Combo1.AddItem "Array routines : Sum"
  744.    Combo1.AddItem "Array routines : Sort"
  745.    Combo1.AddItem "Array routines : ReverseSort"
  746.    Combo1.AddItem "Time routines : AddTime"
  747.    Combo1.AddItem "Time routines : TimeBetween"
  748.    Combo1.AddItem "Time routines : CheckTime"
  749.    Combo1.AddItem "Time routines : HourTo"
  750.    Combo1.AddItem "WIN.INI routines : some separators"
  751.    Combo1.AddItem "WIN.INI routines : devices"
  752.    Combo1.AddItem "WIN.INI routines : printerports"
  753.    Combo1.AddItem "WIN.INI routines : winsection (windows section)"
  754.    Combo1.AddItem "Files routines : AllSubDirectories"
  755.    Combo1.AddItem "Files routines : GetDriveCurrentDir"
  756.    Combo1.AddItem "Files routines : GetDefaultCurrentDir"
  757.    Combo1.AddItem "Files routines : ChDir"
  758.    Combo1.AddItem "Files routines : CountFiles"
  759.    Combo1.AddItem "Files routines : CountDirectories"
  760.    Combo1.AddItem "Files routines : KillFiles"
  761.    Combo1.AddItem "Files routines : GetFullnameInEnv"
  762.    Combo1.AddItem "Files routines : GetDiskSpace"
  763.    Combo1.AddItem "Files routines : GetDiskUsed"
  764.    Combo1.AddItem "Files routines : GetDiskFree"
  765.    Combo1.AddItem "Files routines : KillDir"
  766.    Combo1.AddItem "Files routines : RenameFile"
  767.    Combo1.AddItem "Files routines : FileResetAllAttrib"
  768.    Combo1.AddItem "Files routines : FileSetAllAttrib"
  769.    Combo1.AddItem "Files routines : IsFileX"
  770.    Combo1.AddItem "Files routines : SubDirectory"
  771.    Combo1.AddItem "Files routines : UniqueFileName"
  772.    Combo1.AddItem "String routines : IsX"
  773.    Combo1.AddItem "String routines : OneCharFromLeft"
  774.    Combo1.AddItem "String routines : OneCharFromRight"
  775.    Combo1.AddItem "String routines : BlockCharFromLeft"
  776.    Combo1.AddItem "String routines : BlockCharFromRight"
  777.    Combo1.AddItem "String routines : Compact"
  778.    Combo1.AddItem "String routines : Uncompact"
  779.    Combo1.AddItem "String routines : InsertChars"
  780.    Combo1.AddItem "String routines : RemoveBlockChar"
  781.    Combo1.AddItem "String routines : RemoveOneChar"
  782.    Combo1.AddItem "String routines : CompressTab"
  783.    Combo1.AddItem "String routines : ExpandTab"
  784.    Combo1.AddItem "String routines : GiveBitPalindrome"
  785.    Combo1.AddItem "String routines : IsBitPalindrome"
  786.    Combo1.AddItem "String routines : InsertBlocksBy"
  787.    Combo1.AddItem "String routines : InsertBlocks"
  788.    Combo1.AddItem "String routines : ResizeStringAndFill"
  789.    Combo1.AddItem "String routines : ResizeString"
  790.    Combo1.AddItem "String routines : FilterBlocks"
  791.    Combo1.AddItem "String routines : FilterChars"
  792.    Combo1.AddItem "String routines : CheckChars"
  793.    Combo1.AddItem "String routines : ChangeChars"
  794.    Combo1.AddItem "String routines : ChangeCharsUntil"
  795.    Combo1.AddItem "String routines : Reverse"
  796.    Combo1.AddItem "String routines : GetIn"
  797.    Combo1.AddItem "String routines : GetBlock"
  798.    Combo1.AddItem "String routines : CreateAndFill"
  799.    Combo1.AddItem "String routines : StringCRC32"
  800.    Combo1.AddItem "String routines : Compress"
  801.    Combo1.AddItem "String routines : Encrypt"
  802.    Combo1.AddItem "String routines : Decrypt"
  803.    Combo1.AddItem "Files  routines : FileCRC32"
  804.    Combo1.AddItem "String routines : Lrc"
  805.    Combo1.AddItem "String routines : IsPalindrome"
  806.    Combo1.AddItem "String routines : CheckNumericity"
  807.    Combo1.AddItem "String routines : Fill"
  808.    Combo1.AddItem "String routines : SetAllBits"
  809.    Combo1.AddItem "String routines : SetBit"
  810.    Combo1.AddItem "String routines : GetBit"
  811.    Combo1.AddItem "String routines : FindBitSet"
  812.    Combo1.AddItem "String routines : FindBitReset"
  813.    Combo1.AddItem "String routines : ToggleBit"
  814.    Combo1.AddItem "String routines : ToggleAllBits"
  815.    Combo1.AddItem "String routines : ReverseAllBits"
  816.    Combo1.AddItem "String routines : ReverseAllBitsByChar"
  817.    Combo1.AddItem "String routines : CreateBits"
  818.    Combo1.AddItem "String routines : ArabicToRoman"
  819.    Combo1.AddItem "String routines : RomanToArabic"
  820.    Combo1.AddItem "Custom controls"
  821.    Combo1.AddItem "Swap routines"
  822.    Combo1.AddItem "Min,Max routines"
  823.    Combo1.AddItem "System menu change : French"
  824.    Combo1.AddItem "Files routines : FilesSize, FilesSizeOnDisk, FilesSlack"
  825.    Combo1.AddItem "Files routines : GetClusterSize"
  826.    Combo1.AddItem "Language routines : GetAscTime"
  827.    Combo1.AddItem "Language routines : Days and months name"
  828.    Combo1.AddItem "Language routines : Read Control Language"
  829.    Combo1.AddItem "File routines : Compare"
  830.    Combo1.AddItem "File routines : File Copy"
  831.    Combo1.AddItem "File routines : File Filter"
  832.    Combo1.AddItem "File routines : File Filter Not"
  833.    Combo1.AddItem "File routines : File Encrypt/Decrypt"
  834.    Combo1.AddItem "File routines : File Compress/Expand Tab"
  835.    Combo1.AddItem "File routines : SplitPath"
  836.    Combo1.AddItem "File routines : FullPath"
  837.    Combo1.AddItem "File routines : MakePath"
  838.    Combo1.AddItem "Language routines : Multi-Language & TimeOut Message Box"
  839.    Combo1.AddItem "Language routines : Multi-Language Input Box"
  840.    Combo1.AddItem "String routines : MixChars"
  841.    Combo1.AddItem "Windows Specific Routines : FileVersionInfo"
  842.    Combo1.AddItem "Windows Specific Routines : FileVersion"
  843.    Combo1.AddItem "File routines : FileLineCount"
  844.    Combo1.AddItem "File routines : FileToLower/FileToUpper"
  845.    Combo1.AddItem "Misc. routines : Big Double"
  846.    Combo1.AddItem "Misc. routines : Big Numbers"
  847.    Combo1.AddItem "System menu change (one call) : French"
  848.    Combo1.AddItem "System menu change (one call) : Dutch"
  849.    Combo1.AddItem "System menu change (one call) : German"
  850.    Combo1.AddItem "System menu change (one call) : English"
  851.    Combo1.AddItem "System menu change (one call) : Italian"
  852.    Combo1.AddItem "System menu change (one call) : Spanish"
  853.    Combo1.AddItem "File routines : FileMerge"
  854.    Combo1.AddItem "File routines : FileSearchAndReplace"
  855.    Combo1.AddItem "File routines : FileSearch, FileSearchCount"
  856.    Combo1.AddItem "String routines : PatternMatch"
  857.    Combo1.AddItem "String routines : PatternExtMatch"
  858.    Combo1.AddItem "Misc. routines : Morse"
  859.    Combo1.AddItem "DOS routines : GetDriveType"
  860.    Combo1.AddItem "Misc. routines : Base conversion"
  861.    Combo1.AddItem "File routines : FileStatistics"
  862.    Combo1.AddItem "Disk Array routines : (create) String"
  863.    Combo1.AddItem "Disk Array routines : (create) Long"
  864.    Combo1.AddItem "Disk Array routines : (create) Type'd (b.e. : tagTASKENTRY)"
  865.    Combo1.AddItem "Disk Array routines : (use) String"
  866.    Combo1.AddItem "Disk Array routines : (use) Long"
  867.    Combo1.AddItem "Disk Array routines : (use) Type'd (b.e. : tagTASKENTRY)"
  868.    Combo1.AddItem "Disk Array routines : (clear) String"
  869.    Combo1.AddItem "Disk Array routines : (clear) Long"
  870.    Combo1.AddItem "Disk Array routines : (clear) Type'd (b.e. : tagTASKENTRY)"
  871.    Combo1.AddItem "Disk Array routines : (clear sheet 2) String"
  872.    Combo1.AddItem "Disk Array routines : (clear sheet 2) Long"
  873.    Combo1.AddItem "Disk Array routines : (clear sheet 2) Type'd (b.e. : tagTASKENTRY)"
  874.    Combo1.AddItem "Disk Array routines : (clear last row in sheet 1) String"
  875.    Combo1.AddItem "Disk Array routines : (clear last row in sheet 1) Long"
  876.    Combo1.AddItem "Disk Array routines : (clear last row in sheet 1) Type'd (b.e. : tagTASKENTRY)"
  877.    Combo1.AddItem "Disk Array routines : (clear last col in sheet 1) String"
  878.    Combo1.AddItem "Disk Array routines : (clear last col in sheet 1) Long"
  879.    Combo1.AddItem "Disk Array routines : (clear last col in sheet 1) Type'd (b.e. : tagTASKENTRY)"
  880.    Combo1.AddItem "Disk Array routines : (clear last row in all sheets) String"
  881.    Combo1.AddItem "Disk Array routines : (clear last row in all sheets) Long"
  882.    Combo1.AddItem "Disk Array routines : (clear last row in all sheets) Type'd (b.e. : tagTASKENTRY)"
  883.    Combo1.AddItem "Disk Array routines : (clear last col in all sheets) String"
  884.    Combo1.AddItem "Disk Array routines : (clear last col in all sheets) Long"
  885.    Combo1.AddItem "Disk Array routines : (clear last col in all sheets) Type'd (b.e. : tagTASKENTRY)"
  886.    Combo1.AddItem "VB Management routines : CloseAllEditForm"
  887.    Combo1.AddItem "VB Management routines : HideAllEditForm, UnHideAllEditForm"
  888.    Combo1.AddItem "VB Management routines : HideDebugForm, UnHideDebugForm"
  889.    Combo1.AddItem "String routines : OrToken, OrTokenIn"
  890.    Combo1.AddItem "String routines : AndToken, AndTokenIn"
  891.    Combo1.AddItem "Windows Specific Routines : WalkThruWindow"
  892.    Combo1.AddItem "Serialization : IsSerial, SerialGet, SerialPut, SerialInc"
  893.    Combo1.AddItem "Timer functions : Extended Timer"
  894.    Combo1.AddItem "String routines : Align"
  895.    Combo1.AddItem "String routines : Token"
  896.    Combo1.AddItem "Array routines : ArrayOnDisk"
  897.    Combo1.AddItem "Array routines : ArrayStringOnDisk"
  898.    Combo1.AddItem "String routines : cCnvASCIItoEBCDIC, cCnvEBCDICtoASCII"
  899.    Combo1.AddItem "Misc. routines : Combination C(n,m)"
  900.    Combo1.AddItem "File routines : FileSort (ASC and CS) (record ended with cr/lf)"
  901.    Combo1.AddItem "File routines : FileSort (DSC and CS) (record ended with cr/lf)"
  902.    Combo1.AddItem "File routines : FileSort (ASC and NS) (record ended with cr/lf)"
  903.    Combo1.AddItem "File routines : FileSort (DSC and NS) (record ended with cr/lf)"
  904.    Combo1.AddItem "File routines : FileSort (ASC and CS) (record size 3)"
  905.    Combo1.AddItem "File routines : FileSort (DSC and CS) (record size 3)"
  906.    Combo1.AddItem "File routines : FileSort (ASC and NS) (record size 3)"
  907.    Combo1.AddItem "File routines : FileSort (DSC and NS) (record size 3)"
  908.    Combo1.AddItem "Misc. routines : RegistrationKey"
  909.    Combo1.AddItem "Misc. routines : HashMD5"
  910.    Combo1.AddItem "String routines : ProperName"
  911.    Combo1.AddItem "Matrix routines : MatrixAdd"
  912.    Combo1.AddItem "Matrix routines : MatrixSub"
  913.    Combo1.AddItem "Matrix routines : MatrixCopy"
  914.    Combo1.AddItem "Matrix routines : MatrixMul"
  915.    Combo1.AddItem "Matrix routines : MatrixTranspose"
  916.    Combo1.AddItem "Matrix routines : MatrixCompare"
  917.    Combo1.AddItem "2-D geometry"
  918.    Combo1.AddItem "3-D geometry"
  919.    Combo1.AddItem "String routines : ProperName2"
  920.    Combo1.AddItem "DOS routines : DOSMediaID"
  921.    Combo1.AddItem "File routines : File Compress/Expand"
  922.    Combo1.AddItem "String routines : String Compress/Expand"
  923.    Combo1.AddItem "Array routines : FillIncrI"
  924.    Combo1.AddItem "Matrix routines : MatrixDet"
  925.    Combo1.AddItem "Matrix routines : MatrixInv"
  926.    Combo1.AddItem "Matrix routines : MatrixMinor,MatrixCoFactor"
  927.    Combo1.AddItem "Matrix routines : MatrixSymToeplitz"
  928.    Combo1.AddItem "DOS routines : FloppyInfo"
  929.    Combo1.AddItem "DOS routines : DOSGetVolumeLabel"
  930.    Combo1.AddItem "Time routines : AddTwoTimes"
  931.    Combo1.AddItem "Multiple Disk Array routines : (create)"
  932.    Combo1.AddItem "Multiple Disk Array routines : (use)"
  933.    Combo1.AddItem "Multiple Disk Array routines : (clear)"
  934.    Combo1.AddItem "Multiple Disk Array routines : (clear sheet 2)"
  935.    Combo1.AddItem "Multiple Disk Array routines : (clear last row in sheet 1)"
  936.    Combo1.AddItem "Multiple Disk Array routines : (clear last col in sheet 1)"
  937.    Combo1.AddItem "Multiple Disk Array routines : (clear last row in all sheets)"
  938.    Combo1.AddItem "Multiple Disk Array routines : (clear last col in all sheets)"
  939.    Combo1.AddItem "Date routines : DayOfWeek, DayOfYear, WeekOfYear, ..."
  940.    Combo1.AddItem "Misc. routines : GetVersion"
  941.    Combo1.AddItem "String routines : GetInR, GetInPart, GetInPartR"
  942.    Combo1.AddItem "Huge String"
  943.    Combo1.AddItem "Huge Memory Array : (create) String"
  944.    Combo1.AddItem "Huge Memory Array : (create) Long"
  945.    Combo1.AddItem "Huge Memory Array : (create) Type'd (b.e. : tagTASKENTRY)"
  946.    Combo1.AddItem "Huge Memory Array : (clear) String"
  947.    Combo1.AddItem "Huge Memory Array : (clear) Long"
  948.    Combo1.AddItem "Huge Memory Array : (clear) Type'd (b.e. : tagTASKENTRY)"
  949.    Combo1.AddItem "Huge Memory Array : (clear sheet 2) String"
  950.    Combo1.AddItem "Huge Memory Array : (clear sheet 2) Long"
  951.    Combo1.AddItem "Huge Memory Array : (clear sheet 2) Type'd (b.e. : tagTASKENTRY)"
  952.    Combo1.AddItem "Huge Memory Array : (clear last row in sheet 1) String"
  953.    Combo1.AddItem "Huge Memory Array : (clear last row in sheet 1) Long"
  954.    Combo1.AddItem "Huge Memory Array : (clear last row in sheet 1) Type'd (b.e. : tagTASKENTRY)"
  955.    Combo1.AddItem "Huge Memory Array : (clear last col in sheet 1) String"
  956.    Combo1.AddItem "Huge Memory Array : (clear last col in sheet 1) Long"
  957.    Combo1.AddItem "Huge Memory Array : (clear last col in sheet 1) Type'd (b.e. : tagTASKENTRY)"
  958.    Combo1.AddItem "Huge Memory Array : (clear last row in all sheets) String"
  959.    Combo1.AddItem "Huge Memory Array : (clear last row in all sheets) Long"
  960.    Combo1.AddItem "Huge Memory Array : (clear last row in all sheets) Type'd (b.e. : tagTASKENTRY)"
  961.    Combo1.AddItem "Huge Memory Array : (clear last col in all sheets) String"
  962.    Combo1.AddItem "Huge Memory Array : (clear last col in all sheets) Long"
  963.    Combo1.AddItem "Huge Memory Array : (clear last col in all sheets) Type'd (b.e. : tagTASKENTRY)"
  964.    Combo1.AddItem "Array routines : ArrayToListBox"
  965.    Combo1.AddItem "Time routines : TimeToScalar, ScalarToTime"
  966.    Combo1.AddItem "3D routines : Ctl3D, 3D, GetCtlRect, GetCtlRectTwips"
  967.    Combo1.AddItem "File routines : FileChangeChars"
  968.    Combo1.AddItem "File routines : FilesInfoInDir"
  969.    Combo1.AddItem "File routines : RcsCountFileDir"
  970.    Combo1.AddItem "File routines : FilesInDirOnDisk"
  971.    Combo1.AddItem "File routines : FilesInDirToArray"
  972.    Combo1.AddItem "Files routines : rcsFilesSize, rcsFilesSizeOnDisk, rcsFilesSlack"
  973.    Combo1.AddItem "Language routines : Read Menu Language"
  974.    Combo1.AddItem "String routines : SpellMoney"
  975.    Combo1.AddItem "Misc. routines : Fraction"
  976.    Combo1.AddItem "Misc. routines : Rndx"
  977.    Combo1.AddItem "String routines : StringSAR"
  978.    Combo1.AddItem "File routines : TruncatePath"
  979.    Combo1.AddItem "System menu change (one call) : Catalan"
  980.    Combo1.AddItem "System menu change (one call) : Polish"
  981.    Combo1.AddItem "Array routines : Count"
  982.    Combo1.AddItem "Array routines : Search"
  983.    Combo1.AddItem "String routines : H2I, H2L"
  984.    Combo1.AddItem "String routines : B2I, B2L"
  985.    Combo1.ListIndex = Combo1.ListCount - 1
  986.    Combo2.ListIndex = 2
  987.    Item = Val(Combo2.Text)
  988.    ItemFile = Val(Combo2.Text)
  989.    ItemMean = Val(Combo2.Text)
  990.    Text1.Text = "A/BC/DEF/GHIJ"
  991. End Sub
  992. Private Sub Form_Paint()
  993.    'Dim i As Integer
  994.    'Dim N As Integer
  995.    'N = frmT2W.Controls.Count - 1
  996.    'For i = 0 To N
  997.    '   If ((frmT2W.Controls(i).Visible = True) And (frmT2W.Controls(i).Enabled = True)) Then
  998.    '      Call c3D(frmT2W.Controls(i), 0, 0)
  999.    '   End If
  1000.    'Next i
  1001. End Sub
  1002. Private Sub Form_Unload(Cancel As Integer)
  1003.    Call cShowWindow(frmT2W.hWnd, 1, 125)
  1004. End Sub
  1005. Private Sub Label2_DblClick()
  1006.    Dim i       As Integer
  1007.    Dim N       As Integer
  1008.    N = Combo1.ListCount - 1
  1009.    For i = 0 To N
  1010.       Combo1.ListIndex = i
  1011.       DoEvents
  1012.       Call Command1_Click
  1013.       DoEvents
  1014.    Next i
  1015. End Sub
  1016. Private Sub Test2D()
  1017.    Dim Tmp1       As String
  1018.    Dim i          As Integer
  1019.    Dim j          As Integer
  1020.    Dim k          As Double
  1021.    Dim u          As tagVECTOR2
  1022.    Dim v          As tagVECTOR2
  1023.    Dim w          As tagVECTOR2
  1024.    u.x = 1
  1025.    u.y = 1
  1026.    v.x = 3
  1027.    v.y = 3
  1028.    Tmp1 = Tmp1 & "First vector (u) is (" & u.x & "," & u.y & ")" & Chr$(13) & Chr$(13)
  1029.    Tmp1 = Tmp1 & "Second vector (v) is (" & v.x & "," & v.y & ")" & Chr$(13) & Chr$(13)
  1030.    Call cV2Add(u, v, w)
  1031.    Tmp1 = Tmp1 & "Sum of (u)+(v) = (w) is (" & w.x & "," & w.y & ")" & Chr$(13) & Chr$(13)
  1032.    Call cV2Sub(u, v, w)
  1033.    Tmp1 = Tmp1 & "Sub of (u)-(v) = (w) is (" & w.x & "," & w.y & ")" & Chr$(13) & Chr$(13)
  1034.    Call cV2Mul(u, v, w)
  1035.    Tmp1 = Tmp1 & "Mul of (u).(v) = (w) is (" & w.x & "," & w.y & ")" & Chr$(13) & Chr$(13)
  1036.    k = cV2Dot(u, v)
  1037.    Tmp1 = Tmp1 & "Dot of (u),(v) is " & k & Chr$(13) & Chr$(13)
  1038.    k = cV2Length(v)
  1039.    Tmp1 = Tmp1 & "Length (v) is " & k & Chr$(13) & Chr$(13)
  1040.    k = cV2SegmentLength(u, v)
  1041.    Tmp1 = Tmp1 & "Segmented Length from (u) to (v) is " & k & Chr$(13) & Chr$(13)
  1042.    Call cV2Normalized(u)
  1043.    Tmp1 = Tmp1 & "Normalization of (u) is (" & u.x & "," & u.y & ")" & Chr$(13) & Chr$(13)
  1044.               
  1045.    cStartBasisTimer
  1046.    For i = 1 To ItemFile
  1047.       Call cV2Add(u, v, w)
  1048.    Next i
  1049.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  1050.    Label3.Caption = Tmp1
  1051. End Sub
  1052. Private Sub Test3D()
  1053.    Dim Tmp1       As String
  1054.    Dim i          As Integer
  1055.    Dim j          As Integer
  1056.    Dim k          As Double
  1057.    Dim u          As tagVECTOR3
  1058.    Dim v          As tagVECTOR3
  1059.    Dim w          As tagVECTOR3
  1060.    u.x = 1
  1061.    u.y = 1
  1062.    u.z = 1
  1063.    v.x = 3
  1064.    v.y = 3
  1065.    v.z = 3
  1066.    Tmp1 = Tmp1 & "First vector (u) is (" & u.x & "," & u.y & "," & u.z & ")" & Chr$(13) & Chr$(13)
  1067.    Tmp1 = Tmp1 & "Second vector (v) is (" & v.x & "," & v.y & "," & v.z & ")" & Chr$(13) & Chr$(13)
  1068.    Call cV3Add(u, v, w)
  1069.    Tmp1 = Tmp1 & "Sum of (u)+(v) = (w) is (" & w.x & "," & w.y & "," & w.z & ")" & Chr$(13) & Chr$(13)
  1070.    Call cV3Sub(u, v, w)
  1071.    Tmp1 = Tmp1 & "Sub of (u)-(v) = (w) is (" & w.x & "," & w.y & "," & w.z & ")" & Chr$(13) & Chr$(13)
  1072.    Call cV3Mul(u, v, w)
  1073.    Tmp1 = Tmp1 & "Mul of (u).(v) = (w) is (" & w.x & "," & w.y & ")" & Chr$(13) & Chr$(13)
  1074.    k = cV3Dot(u, v)
  1075.    Tmp1 = Tmp1 & "Dot of (u),(v) is " & k & Chr$(13) & Chr$(13)
  1076.    k = cV3Length(v)
  1077.    Tmp1 = Tmp1 & "Length (v) is " & k & Chr$(13) & Chr$(13)
  1078.    k = cV3SegmentLength(u, v)
  1079.    Tmp1 = Tmp1 & "Segmented Length from (u) to (v) is " & k & Chr$(13) & Chr$(13)
  1080.    Call cV3Normalized(u)
  1081.    Tmp1 = Tmp1 & "Normalization of (u) is (" & u.x & "," & u.y & "," & u.z & ")" & Chr$(13) & Chr$(13)
  1082.               
  1083.    cStartBasisTimer
  1084.    For i = 1 To ItemFile
  1085.       Call cV3Add(u, v, w)
  1086.    Next i
  1087.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  1088.    Label3.Caption = Tmp1
  1089. End Sub
  1090. Private Sub TestAddI()
  1091.    Dim Title      As String
  1092.    Dim Tmp        As String
  1093.    Dim Tmp1       As String
  1094.    Dim Tmp2       As String
  1095.    Dim i          As Integer
  1096.    Dim j          As Integer
  1097.    Dim m          As Double
  1098.    ReDim array(ItemMean) As Integer
  1099.    Randomize Timer
  1100.    For i = LBound(array) To UBound(array)
  1101.       array(i) = 0
  1102.       List1.AddItem "" & array(i)
  1103.    Next i
  1104.    j = cAddI(array(), 10)
  1105.    For i = LBound(array) To UBound(array)
  1106.       List2.AddItem "" & array(i)
  1107.    Next i
  1108.    Tmp1 = Tmp1 & "Add 10 to element 1 of an integer array is : " & array(1) & Chr$(13) & Chr$(13)
  1109.    Tmp1 = Tmp1 & "Add 10 to element " & ItemMean & " of an integer array is : " & array(ItemMean) & Chr$(13) & Chr$(13)
  1110.    cStartBasisTimer
  1111.    For i = 1 To ItemFile
  1112.       j = cAddI(array(), 1)
  1113.    Next i
  1114.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  1115.    Label3.Caption = Tmp1
  1116. End Sub
  1117. Private Sub TestAddTime()
  1118.    Dim Title      As String
  1119.    Dim Tmp        As String
  1120.    Dim Tmp1       As String
  1121.    Dim Tmp2       As String
  1122.    Dim i          As Integer
  1123.    Dim j          As Integer
  1124.    Tmp1 = "The time 10:00 + 02:01 is " & cIntoHour(cAddTime(600 + 121)) & Chr$(13) & Chr$(13)
  1125.    Tmp1 = Tmp1 & "The time 23:58 + 01:02 is " & cIntoHour(cAddTime(1438 + 62)) & Chr$(13) & Chr$(13)
  1126.    cStartBasisTimer
  1127.    For i = 1 To Item
  1128.       j = cAddTime(1439 + 2)
  1129.    Next i
  1130.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1131.    Label3.Caption = Tmp1
  1132. End Sub
  1133. Private Sub TestAddTwoTimes()
  1134.    Dim Title      As String
  1135.    Dim Tmp        As String
  1136.    Dim Tmp1       As String
  1137.    Dim Tmp2       As String
  1138.    Dim i          As Integer
  1139.    Dim j          As Integer
  1140.    Tmp1 = "The time '10:00:58' + '02:01:02' is '" & cAddTwoTimes("10:00:58", "02:01:02") & "'" & Chr$(13) & Chr$(13)
  1141.    Tmp1 = Tmp1 & "The time '23:58:58' + '01:02:01' is '" & cAddTwoTimes("23:58:58", "01:02:01") & "'" & Chr$(13) & Chr$(13)
  1142.    cStartBasisTimer
  1143.    For i = 1 To Item
  1144.       Tmp2 = cAddTwoTimes("23:58:58", "01:02:01")
  1145.    Next i
  1146.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1147.    Label3.Caption = Tmp1
  1148. End Sub
  1149. Private Sub TestAlign()
  1150.    Dim Title      As String
  1151.    Dim Tmp        As String
  1152.    Dim Tmp1       As String
  1153.    Dim Tmp2       As String
  1154.    Dim i          As Integer
  1155.    Dim j          As Integer
  1156.    Tmp = "T2WIN-16"
  1157.    Title = "Left Align of [" & Tmp & "] is " & Chr$(13) & "'"
  1158.    Tmp1 = Title & cAlign(Tmp, -1, 30) & "'" & Chr$(13) & Chr$(13)
  1159.    Title = "Center Align of [" & Tmp & "] is " & Chr$(13) & "'"
  1160.    Tmp1 = Tmp1 & Title & cAlign(Tmp, 0, 30) & "'" & Chr$(13) & Chr$(13)
  1161.    Title = "Right Align of [" & Tmp & "] is " & Chr$(13) & "'"
  1162.    Tmp1 = Tmp1 & Title & cAlign(Tmp, 1, 30) & "'" & Chr$(13) & Chr$(13)
  1163.    j = cTimerOpen()
  1164.    i = cTimerStart(j)
  1165.    For i = 1 To Item
  1166.       Tmp2 = cAlign(Tmp, 0, 30)
  1167.    Next i
  1168.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cTimerRead(j) & " ms"
  1169.    i = cTimerClose(j)
  1170.    Label3.Caption = Tmp1
  1171. End Sub
  1172. Private Sub TestAllSubDir()
  1173.    Dim N       As Integer
  1174.    Dim Tmp     As String
  1175.    N = -1
  1176.    Tmp = cAllSubDirectories("C:", N)
  1177.    Label3.Caption = "Directories founden on drive C are " & N & Chr$(13) & Tmp
  1178. End Sub
  1179. Private Sub TestAndToken()
  1180.    Dim Title      As String
  1181.    Dim Tmp        As String
  1182.    Dim Tmp1       As String
  1183.    Dim Tmp2       As String
  1184.    Dim i          As Integer
  1185.    Dim j          As Integer
  1186.    Tmp = "FOX|OVER|THE"
  1187.    Tmp2 = "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG"
  1188.    Tmp1 = "All tokens '" & Tmp & "' in '" & Tmp2 & "' is " & IIf(cAndToken(Tmp2, Tmp), "ok", "ko") & Chr$(13) & Chr$(13)
  1189.    Tmp = "quick|jumps|the"
  1190.    Tmp2 = "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG"
  1191.    Tmp1 = Tmp1 & "All tokens '" & Tmp & "' in '" & Tmp2 & "' is " & IIf(cAndToken(Tmp2, Tmp), "ok", "ko") & Chr$(13) & Chr$(13)
  1192.    Tmp = "FOX\OVER\THE"
  1193.    Tmp2 = "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG"
  1194.    Tmp1 = Tmp1 & "All tokens '" & Tmp & "' in '" & Tmp2 & "' is " & IIf(cAndTokenIn(Tmp2, Tmp, "\"), "ok", "ko") & Chr$(13) & Chr$(13)
  1195.    Tmp = "quick\jumps\the"
  1196.    Tmp2 = "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG"
  1197.    Tmp1 = Tmp1 & "All tokens '" & Tmp & "' in '" & Tmp2 & "' is " & IIf(cAndTokenIn(Tmp2, Tmp, "\"), "ok", "ko") & Chr$(13) & Chr$(13)
  1198.    Tmp = "FOX/OVER/THE"
  1199.    Tmp2 = "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG"
  1200.    Tmp1 = Tmp1 & "All tokens '" & Tmp & "' in '" & Tmp2 & "' is " & IIf(cAndTokenIn(Tmp2, Tmp, "\"), "ok", "ko") & Chr$(13) & Chr$(13)
  1201.    Tmp = "quick\JUMPS\the"
  1202.    Tmp2 = "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG"
  1203.    Tmp1 = Tmp1 & "All tokens '" & Tmp & "' in '" & Tmp2 & "' is " & IIf(cAndTokenIn(Tmp2, Tmp, "\"), "ok", "ko") & Chr$(13) & Chr$(13)
  1204.    Tmp = LCase$("quick\jumps\THE")
  1205.    Tmp2 = LCase$("THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG")
  1206.    Tmp1 = Tmp1 & "All tokens '" & Tmp & "' in '" & Tmp2 & "' is " & IIf(cAndTokenIn(Tmp2, Tmp, "\"), "ok", "ko") & Chr$(13) & Chr$(13)
  1207.    cStartBasisTimer
  1208.    For i = 1 To Item
  1209.       j = cAndToken(Tmp2, Tmp)
  1210.    Next i
  1211.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1212.    Label3.Caption = Tmp1
  1213. End Sub
  1214. Private Sub TestArrayLB()
  1215.    Dim Title      As String
  1216.    Dim Tmp        As String
  1217.    Dim Tmp1       As String
  1218.    Dim Tmp2       As String
  1219.    Dim i          As Long
  1220.    Dim j          As Long
  1221.    Dim n1         As Long
  1222.    Dim n2         As Long
  1223.    Dim m1         As Integer
  1224.    Dim m2         As Integer
  1225.    m1 = -99
  1226.    m2 = 99
  1227.    ReDim AD(m1 To m2) As String
  1228.    Randomize Timer
  1229.    ' initialization because we use ReDim without Global definition
  1230.    For i = m1 To m2
  1231.       If ((Abs(i) Mod 2) = 0) Then
  1232.          AD(i) = i & " " & Chr$(64 + Int(26 * Rnd)) + Chr$(64 + Int(26 * Rnd)) + Chr$(64 + Int(26 * Rnd))
  1233.       Else
  1234.          AD(i) = i & " " & Chr$(64 + Int(26 * Rnd)) + Chr$(64 + Int(26 * Rnd)) + Chr$(64 + Int(26 * Rnd)) + Chr$(64 + Int(26 * Rnd))
  1235.       End If
  1236.    Next i
  1237.    Tmp1 = "Memory array (" & m1 & " To " & m2 & ") has been created and initialized." & Chr$(13)
  1238.    j = cArrayToListBox(List1.hWnd, AD())
  1239.    j = cArrayToListBox(List2.hWnd, AD())
  1240.    List1.Clear
  1241.    cStartBasisTimer
  1242.    For i = 1 To Item
  1243.       j = cArrayToListBox(List1.hWnd, AD())
  1244.    Next i
  1245.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1246.    Label3.Caption = Tmp1
  1247. End Sub
  1248. Private Sub TestArrayOnDisk()
  1249.    Dim Title      As String
  1250.    Dim Tmp        As String
  1251.    Dim Tmp1       As String
  1252.    Dim Tmp2       As String
  1253.    Dim i          As Long
  1254.    Dim j          As Long
  1255.    Dim n1         As Long
  1256.    Dim n2         As Long
  1257.    Dim m1         As Integer
  1258.    Dim m2         As Integer
  1259.    m1 = -9999
  1260.    m2 = 9999
  1261.    ReDim AD(m1 To m2, 0 To 1) As Long
  1262.    Randomize Timer
  1263.    n1 = Int(1234567890 * Rnd)
  1264.    n2 = -Int(987654321 * Rnd)
  1265.    ' initialization because we use ReDim without Global definition
  1266.    For i = m1 To m2
  1267.       AD(i, 0) = n1
  1268.       AD(i, 1) = n2
  1269.    Next i
  1270.    Tmp = "test.dat"
  1271.    Tmp1 = "Memory array (" & m1 & " To " & m2 & ", 0 To 1) has been created and initialized." & Chr$(13)
  1272.    Tmp1 = Tmp1 + "File '" & Tmp & "' will be used." & Chr$(13)
  1273.    Tmp1 = Tmp1 + "Each (i,0) is init with '" & n1 & "'." & Chr$(13)
  1274.    Tmp1 = Tmp1 + "Each (i,1) is init with '" & n2 & "'." & Chr$(13) & Chr$(13)
  1275.    Tmp1 = Tmp1 + "AD(" & m1 & ", 0) is " & AD(m1, 0) & Chr$(13)
  1276.    Tmp1 = Tmp1 + "AD(" & m2 & ", 0) is " & AD(m2, 0) & Chr$(13)
  1277.    Tmp1 = Tmp1 + "AD(" & m1 & ", 1) is " & AD(m1, 1) & Chr$(13)
  1278.    Tmp1 = Tmp1 + "AD(" & m2 & ", 1) is " & AD(m2, 1) & Chr$(13) & Chr$(13)
  1279.    Tmp1 = Tmp1 + "Put array on disk is '" & cArrayOnDisk(Tmp, AD(), PUT_ARRAY_ON_DISK) & "' bytes." & Chr$(13) & Chr$(13)
  1280.    Tmp1 = Tmp1 + "Memory array (" & m1 & " To " & m2 & ", 0 To 1) has been zero'ed." & Chr$(13) & Chr$(13)
  1281.    For i = m1 To m2
  1282.       AD(i, 0) = 0
  1283.       AD(i, 1) = 0
  1284.    Next i
  1285.    Tmp1 = Tmp1 + "AD(" & m1 & ", 0) is " & AD(m1, 0) & Chr$(13)
  1286.    Tmp1 = Tmp1 + "AD(" & m2 & ", 0) is " & AD(m2, 0) & Chr$(13)
  1287.    Tmp1 = Tmp1 + "AD(" & m1 & ", 1) is " & AD(m1, 1) & Chr$(13)
  1288.    Tmp1 = Tmp1 + "AD(" & m2 & ", 1) is " & AD(m2, 1) & Chr$(13) & Chr$(13)
  1289.    Tmp1 = Tmp1 + "Get array on disk is '" & cArrayOnDisk(Tmp, AD(), GET_ARRAY_ON_DISK) & "' bytes." & Chr$(13) & Chr$(13)
  1290.    Tmp1 = Tmp1 + "AD(" & m1 & ", 0) is " & AD(m1, 0) & Chr$(13)
  1291.    Tmp1 = Tmp1 + "AD(" & m2 & ", 0) is " & AD(m2, 0) & Chr$(13)
  1292.    Tmp1 = Tmp1 + "AD(" & m1 & ", 1) is " & AD(m1, 1) & Chr$(13)
  1293.    Tmp1 = Tmp1 + "AD(" & m2 & ", 1) is " & AD(m2, 1) & Chr$(13) & Chr$(13)
  1294.    cStartBasisTimer
  1295.    For i = 1 To Item
  1296.       j = cArrayOnDisk(Tmp, AD(), GET_ARRAY_ON_DISK)
  1297.    Next i
  1298.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1299.    Label3.Caption = Tmp1
  1300. End Sub
  1301. Private Sub TestArrayStringOnDisk()
  1302.    Dim Title      As String
  1303.    Dim Tmp        As String
  1304.    Dim Tmp1       As String
  1305.    Dim Tmp2       As String
  1306.    Dim i          As Long
  1307.    Dim j          As Long
  1308.    Dim n1         As Long
  1309.    Dim n2         As Long
  1310.    Dim r          As Long
  1311.    Dim m1         As Integer
  1312.    Dim m2         As Integer
  1313.    m1 = -999
  1314.    m2 = 4000
  1315.    ReDim AD(m1 To m2) As String
  1316.    ' initialization because we use ReDim without Global definition
  1317.    'For i = m1 To m2
  1318.    '   AD(i) = Space$(256)
  1319.    'Next i
  1320.    Randomize Timer
  1321.    Tmp = "c:\autoexec.bat"
  1322.    Tmp2 = "c:\autoexec.tab"
  1323.    Tmp1 = "Reading file '" & Tmp & "' into AD(" & m1 & " To " & m2 & ") is '" & cArrayStringOnDisk(Tmp, AD(), GET_ARRAY_ON_DISK, r) & "'" & Chr$(13)
  1324.    Tmp1 = Tmp1 & "   The 7 (on " & r & ") first lines in array are : " & Chr$(13) & Chr$(13)
  1325.    For i = 0 To 6
  1326.       Tmp1 = Tmp1 & AD(m1 + i) & Chr$(13)
  1327.    Next i
  1328.    Tmp1 = Tmp1 & Chr$(13) & "Writing file '" & Tmp2 & "' from AD(" & m1 & " To " & m2 & ") is '" & cArrayStringOnDisk(Tmp2, AD(), PUT_ARRAY_ON_DISK, r) & "'" & Chr$(13) & Chr$(13)
  1329.    Tmp1 = Tmp1 & "Reading file '" & Tmp2 & "' into AD(" & m1 & " To " & m2 & ") is '" & cArrayStringOnDisk(Tmp2, AD(), GET_ARRAY_ON_DISK, r) & "'" & Chr$(13)
  1330.    Tmp1 = Tmp1 & "   The 7 (on " & r & ") first lines in array are : " & Chr$(13) & Chr$(13)
  1331.    For i = 0 To 6
  1332.       Tmp1 = Tmp1 & AD(m1 + i) & Chr$(13)
  1333.    Next i
  1334.    cStartBasisTimer
  1335.    For i = 1 To Item
  1336.       j = cArrayStringOnDisk(Tmp, AD(), GET_ARRAY_ON_DISK, r)
  1337.    Next i
  1338.    Tmp1 = Tmp1 & Chr$(13) & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1339.    Label3.Caption = Tmp1
  1340. End Sub
  1341. Private Sub TestAscTime()
  1342.    Dim Title      As String
  1343.    Dim Tmp        As String
  1344.    Dim Tmp1       As String
  1345.    Dim Tmp2       As String
  1346.    Dim i          As Integer
  1347.    Dim j          As Integer
  1348.    Dim k          As Long
  1349.    Dim ErrCode    As Integer
  1350.    Tmp1 = ""
  1351.    For i = LNG_FRENCH To LNG_POLISH
  1352.       Tmp1 = Tmp1 + cGetAscTime(i) & Chr$(13)
  1353.    Next i
  1354.    Tmp1 = Tmp1 + Chr$(13)
  1355.    cStartBasisTimer
  1356.    For i = 1 To Item
  1357.       Tmp = cGetAscTime(LNG_FRENCH)
  1358.    Next i
  1359.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1360.    Label3.Caption = Tmp1
  1361. End Sub
  1362. Private Sub TestAtoR()
  1363.    Dim Tmp        As Integer
  1364.    Dim Tmp1       As String
  1365.    Tmp = Year(Int(Now))
  1366.    Tmp1 = Tmp & " in Roman is " & UCase$(cArabicToRoman(Tmp)) & Chr$(13)
  1367.    Tmp = Year(Int(Now)) - 1
  1368.    Tmp1 = Tmp1 & Tmp & " in Roman is " & UCase$(cArabicToRoman(Tmp)) & Chr$(13)
  1369.    Tmp = Year(Int(Now)) + 1
  1370.    Tmp1 = Tmp1 & Tmp & " in Roman is " & UCase$(cArabicToRoman(Tmp)) & Chr$(13)
  1371.    Label3.Caption = Tmp1
  1372. End Sub
  1373. Private Sub TestBaseConversion()
  1374.    Dim Title      As String
  1375.    Dim Tmp        As String
  1376.    Dim Tmp1       As String
  1377.    Dim Tmp2       As String
  1378.    Dim i          As Integer
  1379.    Dim j          As Integer
  1380.    Dim k          As Long
  1381.    Dim ErrCode    As Integer
  1382.    Tmp1 = ""
  1383.    For i = 2 To 20
  1384.       Tmp1 = Tmp1 + "Convert '1234567' base 10 to base " & i & " is " & cBaseConversion("1234567", 10, i) & Chr$(13)
  1385.    Next i
  1386.    Tmp1 = Tmp1 + Chr$(13)
  1387.    cStartBasisTimer
  1388.    For i = 1 To Item
  1389.       Tmp = cBaseConversion("123456789", 10, 10)
  1390.    Next i
  1391.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1392.    Label3.Caption = Tmp1
  1393. End Sub
  1394. Private Sub TestBetween()
  1395.    Dim Title      As String
  1396.    Dim Tmp        As String
  1397.    Dim Tmp1       As String
  1398.    Dim Tmp2       As String
  1399.    Dim i          As Integer
  1400.    Dim j          As Integer
  1401.    Tmp1 = "601 is not between 720 and 840 => " & cBetween(601, 720, 840) & Chr$(13) & Chr$(13)
  1402.    Tmp1 = Tmp1 & "601 is between 540 and 602 => " & cBetween(601, 540, 602) & Chr$(13) & Chr$(13)
  1403.    Tmp1 = Tmp1 & "61 is between 61 and 62 => " & cBetween(61, 61, 62) & Chr$(13) & Chr$(13)
  1404.    cStartBasisTimer
  1405.    For i = 1 To Item
  1406.       j = cBetween(720, 0, 1439)
  1407.    Next i
  1408.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1409.    Label3.Caption = Tmp1
  1410. End Sub
  1411. Private Sub TestBig()
  1412.    Dim Title      As String
  1413.    Dim Tmp        As String
  1414.    Dim Tmp1       As String
  1415.    Dim Tmp2       As String
  1416.    Dim Tmp3       As String
  1417.    Dim i          As Integer
  1418.    Dim j          As Integer
  1419.    Dim m1         As Double
  1420.    Dim m2         As Double
  1421.    m1 = 123456789012345#
  1422.    m2 = 987654321098765#
  1423.    Tmp1 = Tmp1 & "Double     : Add '" & m1 & "' and '" & m2 & "' is '" & (m1 + m2) & "'" & Chr$(13)
  1424.    Tmp1 = Tmp1 & "Big Double : Add '" & m1 & "' and '" & m2 & "' is '" & cBigFmt(cBigAdd(cMKN(Str$(m1)), cMKN(Str$(m2))), 0) & "'" & Chr$(13)
  1425.    Tmp1 = Tmp1 & "Big Num    : Add '" & m1 & "' and '" & m2 & "' is '" & cBigNum(LTrim$(Str$(m1)), BIG_ADD, LTrim$(Str$(m2))) & "'" & Chr$(13) & Chr$(13)
  1426.    Tmp1 = Tmp1 & "Double     : Sub '" & m1 & "' and '" & m2 & "' is '" & (m1 - m2) & "'" & Chr$(13)
  1427.    Tmp1 = Tmp1 & "Big Double : Sub '" & m1 & "' and '" & m2 & "' is '" & cBigFmt(cBigSub(cMKN(Str$(m1)), cMKN(Str$(m2))), 0) & "'" & Chr$(13)
  1428.    Tmp1 = Tmp1 & "Big Num    : Sub '" & m1 & "' and '" & m2 & "' is '" & cBigNum(LTrim$(Str$(m1)), BIG_SUB, LTrim$(Str$(m2))) & "'" & Chr$(13) & Chr$(13)
  1429.    Tmp1 = Tmp1 & "Double     : Mul '" & m1 & "' and '" & m2 & "' is '" & (m1 * m2) & "'" & Chr$(13)
  1430.    Tmp1 = Tmp1 & "Big Double : Mul '" & m1 & "' and '" & m2 & "' is '" & cBigFmt(cBigMul(cMKN(Str$(m1)), cMKN(Str$(m2))), 0) & "'" & Chr$(13)
  1431.    Tmp1 = Tmp1 & "Big Num    : Mul '" & m1 & "' and '" & m2 & "' is '" & cBigNum(LTrim$(Str$(m1)), BIG_MUL, LTrim$(Str$(m2))) & "'" & Chr$(13) & Chr$(13)
  1432.    Tmp1 = Tmp1 & "Double     : Div '" & m1 & "' and '" & m2 & "' is '" & (m1 / m2) & "'" & Chr$(13)
  1433.    Tmp1 = Tmp1 & "Big Double : Div '" & m1 & "' and '" & m2 & "' is '" & cBigFmt(cBigDiv(cMKN(Str$(m1)), cMKN(Str$(m2))), 0) & "'" & Chr$(13) & Chr$(13)
  1434.    cStartBasisTimer
  1435.    For i = 1 To ItemFile
  1436.       Tmp3 = cBigAdd(cMKN(Str$(m1)), cMKN(Str$(m2)))
  1437.    Next i
  1438.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  1439.    Label3.Caption = Tmp1
  1440. End Sub
  1441. Private Sub TestBigNum()
  1442.    Dim Title      As String
  1443.    Dim Tmp        As String
  1444.    Dim Tmp1       As String
  1445.    Dim Tmp2       As String
  1446.    Dim Tmp3       As String
  1447.    Dim Tmp4       As String
  1448.    Dim i          As Integer
  1449.    Dim j          As Integer
  1450.    Dim m          As Double
  1451.    Tmp3 = "00001234567890123456789012345678901"
  1452.    Tmp4 = "00009876543210987654321098765432100"
  1453.    Tmp1 = Tmp1 & "X = " & Tmp3 & Chr$(13)
  1454.    Tmp1 = Tmp1 & "Y = " & Tmp4 & Chr$(13) & Chr$(13)
  1455.    Tmp = Tmp3
  1456.    Tmp2 = Tmp4
  1457.    Tmp1 = Tmp1 & "'(X) + (Y)' " & Space$(3) & " is '" & cBigNum(Tmp, BIG_ADD, Tmp2) & "'" & Chr$(13)
  1458.    Tmp = Tmp3
  1459.    Tmp2 = "-" & Tmp4
  1460.    Tmp1 = Tmp1 & "'(X) + (-Y)' " & Space$(3) & " is '" & cBigNum(Tmp, BIG_ADD, Tmp2) & "'" & Chr$(13)
  1461.    Tmp = "-" & Tmp3
  1462.    Tmp2 = Tmp4
  1463.    Tmp1 = Tmp1 & "'(-X) + (Y)' " & Space$(3) & " is '" & cBigNum(Tmp, BIG_ADD, Tmp2) & "'" & Chr$(13)
  1464.    Tmp = "-" & Tmp3
  1465.    Tmp2 = "-" & Tmp4
  1466.    Tmp1 = Tmp1 & "'(-X) + (-Y)' " & Space$(3) & " is '" & cBigNum(Tmp, BIG_ADD, Tmp2) & "'" & Chr$(13) & Chr$(13)
  1467.    Tmp = Tmp3
  1468.    Tmp2 = Tmp4
  1469.    Tmp1 = Tmp1 & "'(X) - (Y)' " & Space$(3) & " is '" & cBigNum(Tmp, BIG_SUB, Tmp2) & "'" & Chr$(13)
  1470.    Tmp = Tmp3
  1471.    Tmp2 = "-" & Tmp4
  1472.    Tmp1 = Tmp1 & "'(X) - (-Y)' " & Space$(3) & " is '" & cBigNum(Tmp, BIG_SUB, Tmp2) & "'" & Chr$(13)
  1473.    Tmp = "-" & Tmp3
  1474.    Tmp2 = Tmp4
  1475.    Tmp1 = Tmp1 & "'(-X) - (Y)' " & Space$(3) & " is '" & cBigNum(Tmp, BIG_SUB, Tmp2) & "'" & Chr$(13)
  1476.    Tmp = "-" & Tmp3
  1477.    Tmp2 = "-" & Tmp4
  1478.    Tmp1 = Tmp1 & "'(-X) - (-Y)' " & Space$(3) & " is '" & cBigNum(Tmp, BIG_SUB, Tmp2) & "'" & Chr$(13) & Chr$(13)
  1479.    Tmp = Tmp3
  1480.    Tmp2 = Tmp4
  1481.    Tmp1 = Tmp1 & "'(X) * (Y)' " & Space$(3) & " is '" & cBigNum(Tmp, BIG_MUL, Tmp2) & "'" & Chr$(13)
  1482.    Tmp = Tmp3
  1483.    Tmp2 = "-" & Tmp4
  1484.    Tmp1 = Tmp1 & "'(X) * (-Y)' " & Space$(3) & " is '" & cBigNum(Tmp, BIG_MUL, Tmp2) & "'" & Chr$(13)
  1485.    Tmp = "-" & Tmp3
  1486.    Tmp2 = Tmp4
  1487.    Tmp1 = Tmp1 & "'(-X) * (Y)' " & Space$(3) & " is '" & cBigNum(Tmp, BIG_MUL, Tmp2) & "'" & Chr$(13)
  1488.    Tmp = "-" & Tmp3
  1489.    Tmp2 = "-" & Tmp4
  1490.    Tmp1 = Tmp1 & "'(-X) * (-Y)' " & Space$(3) & " is '" & cBigNum(Tmp, BIG_MUL, Tmp2) & "'" & Chr$(13) & Chr$(13)
  1491.    cStartBasisTimer
  1492.    For i = 1 To ItemFile
  1493.       Tmp3 = cBigNum(Tmp, BIG_ADD, Tmp2)
  1494.    Next i
  1495.    Tmp1 = Tmp1 & "speed for " & ItemFile & " ADD = " & (cReadBasisTimer() / 1000) & Chr$(13)
  1496.    cStartBasisTimer
  1497.    For i = 1 To ItemFile
  1498.       Tmp3 = cBigNum(Tmp, BIG_SUB, Tmp2)
  1499.    Next i
  1500.    Tmp1 = Tmp1 & "speed for " & ItemFile & " SUB = " & (cReadBasisTimer() / 1000) & Chr$(13)
  1501.    cStartBasisTimer
  1502.    For i = 1 To ItemFile
  1503.       Tmp3 = cBigNum(Tmp, BIG_MUL, Tmp2)
  1504.    Next i
  1505.    Tmp1 = Tmp1 & "speed for " & ItemFile & " MUL = " & (cReadBasisTimer() / 1000)
  1506.    Label3.Caption = Tmp1
  1507. End Sub
  1508. Private Sub TestBigString01()
  1509.    Dim Tmp1       As String
  1510.    Dim m1         As Integer
  1511.    Dim p1         As Integer
  1512.    Tmp1 = "Create a big string of 512 Kb is "
  1513.    m1 = cHugeStrCreate(512 * 1024&)
  1514.    Tmp1 = Tmp1 & IIf(m1 <> 0, "OK", "ko") & " (" & m1 & ")" & Chr$(13)
  1515.    Tmp1 = Tmp1 & "Size (" & m1 & ") is " & cHugeStrSize(m1) & Chr$(13)
  1516.    Tmp1 = Tmp1 & "Memory Address (" & m1 & ") is " & cHugeStrAddress(m1) & Chr$(13)
  1517.    Tmp1 = Tmp1 & "Length (" & m1 & ") is " & cHugeStrLength(m1) & Chr$(13)
  1518.    Tmp1 = Tmp1 & "Add '1234567890' (" & m1 & ") is " & IIf(cHugeStrAdd(m1, "1234567890"), "OK", "ko") & Chr$(13)
  1519.    Tmp1 = Tmp1 & "Length (" & m1 & ") is " & cHugeStrLength(m1) & Chr$(13)
  1520.    Tmp1 = Tmp1 & "Pointer (" & m1 & ") is " & cHugeStrGetWP(m1) & Chr$(13)
  1521.    Tmp1 = Tmp1 & "Add 'This is a test' (" & m1 & ") is " & IIf(cHugeStrAdd(m1, "This is a test"), "OK", "ko") & Chr$(13)
  1522.    Tmp1 = Tmp1 & "Length (" & m1 & ") is " & cHugeStrLength(m1) & Chr$(13)
  1523.    Tmp1 = Tmp1 & "Pointer (" & m1 & ") is " & cHugeStrGetWP(m1) & Chr$(13)
  1524.    Tmp1 = Tmp1 & "Blocks (" & m1 & ") is " & cHugeStrBlocks(m1) & Chr$(13)
  1525.    Tmp1 = Tmp1 & "Read (" & m1 & ") is '" & cHugeStrRead(m1, 1) & "'" & Chr$(13)
  1526.    Tmp1 = Tmp1 & "Set pointer (" & m1 & ") to 7 is " & cHugeStrSetWP(m1, 7) & Chr$(13)
  1527.    Tmp1 = Tmp1 & "Add 'THIS IS A TEST' (" & m1 & ") is " & IIf(cHugeStrAdd(m1, "THIS IS A TEST"), "OK", "ko") & Chr$(13)
  1528.    Tmp1 = Tmp1 & "Length (" & m1 & ") is " & cHugeStrLength(m1) & Chr$(13)
  1529.    Tmp1 = Tmp1 & "Read (" & m1 & ") is '" & cHugeStrRead(m1, 1) & "'" & Chr$(13)
  1530.    Tmp1 = Tmp1 & "Append 'append one' (" & m1 & ") is " & IIf(cHugeStrAppend(m1, "append one"), "OK", "ko") & Chr$(13)
  1531.    Tmp1 = Tmp1 & "Append 'append two' (" & m1 & ") is " & IIf(cHugeStrAppend(m1, "append two"), "OK", "ko") & Chr$(13)
  1532.    Tmp1 = Tmp1 & "Length (" & m1 & ") is " & cHugeStrLength(m1) & Chr$(13)
  1533.    Tmp1 = Tmp1 & "Read (" & m1 & ") is '" & cHugeStrRead(m1, 1) & "'" & Chr$(13)
  1534.    Tmp1 = Tmp1 & "Set pointer (" & m1 & ") to " & cHugeStrLength(m1) & " is " & cHugeStrSetWP(m1, cHugeStrLength(m1)) & Chr$(13)
  1535.    Tmp1 = Tmp1 & "Add 'AZERTYUIOP' (" & m1 & ") is " & IIf(cHugeStrAdd(m1, "AZERTYUIOP"), "OK", "ko") & Chr$(13)
  1536.    Tmp1 = Tmp1 & "Length (" & m1 & ") is " & cHugeStrLength(m1) & Chr$(13)
  1537.    Tmp1 = Tmp1 & "Mid (" & m1 & ") is '" & cHugeStrMid(m1, 3, 10) & "'" & Chr$(13)
  1538.    Tmp1 = Tmp1 & "Read (" & m1 & ") is '" & cHugeStrRead(m1, 1) & "'" & Chr$(13)
  1539.    Tmp1 = Tmp1 & "Clear (" & m1 & ") is " & IIf(cHugeStrClear(m1), "OK", "ko") & Chr$(13)
  1540.    Tmp1 = Tmp1 & "Free a big string of 512 Kb is "
  1541.    p1 = cHugeStrFree(m1)
  1542.    Tmp1 = Tmp1 & IIf(p1 <> 0, "OK", "ko") & " (" & p1 & ")" & Chr$(13)
  1543.    Label3.Caption = Tmp1
  1544. End Sub
  1545. Private Sub TestBlockCharFromLeft()
  1546.    Dim Title      As String
  1547.    Dim Tmp        As String
  1548.    Dim Tmp1       As String
  1549.    Dim Tmp2       As String
  1550.    Dim i          As Integer
  1551.    Dim j          As Integer
  1552.    Tmp = Text1.Text
  1553.    Title = "The 3,7,1 blocks from left of [" & Tmp & "] are " & Chr$(13) & Chr$(13)
  1554.    Tmp = Text1.Text
  1555.    Tmp1 = Title & "3:" & cBlockCharFromLeft(Tmp, 3) & " | 7:" & cBlockCharFromLeft(Tmp, 7) & " | 1:" & cBlockCharFromLeft(Tmp, 1) & Chr$(13) & Chr$(13)
  1556.    cStartBasisTimer
  1557.    For i = 1 To Item
  1558.       Tmp2 = cBlockCharFromLeft(Tmp, 2)
  1559.    Next i
  1560.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1561.    Label3.Caption = Tmp1
  1562. End Sub
  1563. Private Sub TestBlockCharFromRight()
  1564.    Dim Title      As String
  1565.    Dim Tmp        As String
  1566.    Dim Tmp1       As String
  1567.    Dim Tmp2       As String
  1568.    Dim i          As Integer
  1569.    Dim j          As Integer
  1570.    Tmp = Text1.Text
  1571.    Title = "The 3,7,1 blocks from right of [" & Tmp & "] are " & Chr$(13) & Chr$(13)
  1572.    Tmp = Text1.Text
  1573.    Tmp1 = Title & "3:" & cBlockCharFromRight(Tmp, 3) & " | 7:" & cBlockCharFromRight(Tmp, 7) & " | 1:" & cBlockCharFromRight(Tmp, 1) & Chr$(13) & Chr$(13)
  1574.    cStartBasisTimer
  1575.    For i = 1 To Item
  1576.       Tmp2 = cBlockCharFromRight(Tmp, 2)
  1577.    Next i
  1578.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1579.    Label3.Caption = Tmp1
  1580. End Sub
  1581. Private Sub TestChangeChars()
  1582.    Dim Title      As String
  1583.    Dim Tmp        As String
  1584.    Dim Tmp1       As String
  1585.    Dim Tmp2       As String
  1586.    Dim i          As Integer
  1587.    Dim j          As Integer
  1588.    Tmp = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
  1589.    Title = "Change 'AZM' into 'qyc' of [" & Tmp & "] is "
  1590.    Call cChangeChars(Tmp, "AZM", "qyc")
  1591.    Tmp1 = Title & Tmp & Chr$(13) & Chr$(13)
  1592.    cStartBasisTimer
  1593.    For i = 1 To Item
  1594.       Call cChangeChars(Tmp, "AZM", "qyc")
  1595.    Next i
  1596.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1597.    Label3.Caption = Tmp1
  1598. End Sub
  1599. Private Sub TestChangeCharsUntil()
  1600.    Dim Title      As String
  1601.    Dim Tmp        As String
  1602.    Dim Tmp1       As String
  1603.    Dim Tmp2       As String
  1604.    Dim i          As Integer
  1605.    Dim j          As Integer
  1606.    Tmp = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
  1607.    Title = "Change 'AZM' into 'qyc' of [" & Tmp & "] until 'N' is "
  1608.    Call cChangeCharsUntil(Tmp, "AZM", "qyc", "N")
  1609.    Tmp1 = Title & Tmp & Chr$(13) & Chr$(13)
  1610.    cStartBasisTimer
  1611.    For i = 1 To Item
  1612.       Call cChangeCharsUntil(Tmp, "AZM", "qyc", "N")
  1613.    Next i
  1614.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1615.    Label3.Caption = Tmp1
  1616. End Sub
  1617. Private Sub TestChDir()
  1618.    Dim Title      As String
  1619.    Dim Tmp        As String
  1620.    Dim Tmp1       As String
  1621.    Dim Tmp2       As String
  1622.    Dim i          As Integer
  1623.    Dim j          As Integer
  1624.    Dim k          As Long
  1625.    Dim ErrCode    As Integer
  1626.    Tmp1 = ""
  1627.    For i = 1 To 26
  1628.       k = cChDir(Chr$(64 + i) & ":\")
  1629.       If (k = True) Then
  1630.          Tmp1 = Tmp1 & "ChDir to \ on '" & Chr$(64 + i) & ":' is " & IIf(k = True, "succesfull", "not successfull") & Chr$(13)
  1631.       End If
  1632.    Next i
  1633.    Tmp1 = Tmp1 + Chr$(13)
  1634.    cStartBasisTimer
  1635.    For i = 1 To Item
  1636.       k = cChDir("C:\")
  1637.    Next i
  1638.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1639.    Label3.Caption = Tmp1
  1640. End Sub
  1641. Private Sub TestChDrive()
  1642.    Dim Title      As String
  1643.    Dim Tmp        As String
  1644.    Dim Tmp1       As String
  1645.    Dim Tmp2       As String
  1646.    Dim i          As Integer
  1647.    Dim j          As Integer
  1648.    Dim k          As Long
  1649.    Dim ErrCode    As Integer
  1650.    Tmp1 = ""
  1651.    For i = 1 To 26
  1652.       k = cChDrive(Chr$(64 + i))
  1653.       If (k = True) Then
  1654.          Tmp1 = Tmp1 & "ChDrive on '" & Chr$(64 + i) & ":' is " & IIf(k = True, "succesfull", "not successfull") & Chr$(13)
  1655.       End If
  1656.    Next i
  1657.    Tmp1 = Tmp1 + Chr$(13)
  1658.    cStartBasisTimer
  1659.    For i = 1 To Item
  1660.       k = cChDrive("C")
  1661.    Next i
  1662.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1663.    Label3.Caption = Tmp1
  1664. End Sub
  1665. Private Sub TestCheckChars()
  1666.    Dim Title      As String
  1667.    Dim Tmp        As String
  1668.    Dim Tmp1       As String
  1669.    Dim Tmp2       As String
  1670.    Dim i          As Integer
  1671.    Dim j          As Integer
  1672.    Tmp = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
  1673.    Title = "Check 'A','Z' in [" & Tmp & "] is "
  1674.    Tmp1 = Title & IIf(cCheckChars(Tmp, "AZ"), "all present", "not all present") & Chr$(13) & Chr$(13)
  1675.    Title = Tmp1 & "Check 'a','Z' in [" & Tmp & "] is "
  1676.    Tmp1 = Title & IIf(cCheckChars(Tmp, "aZ"), "all present", "not all present") & Chr$(13) & Chr$(13)
  1677.    cStartBasisTimer
  1678.    For i = 1 To Item
  1679.       j = cCheckChars(Tmp, "AZ")
  1680.    Next i
  1681.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1682.    Label3.Caption = Tmp1
  1683. End Sub
  1684. Private Sub TestCheckNumericity()
  1685.    Dim Title      As String
  1686.    Dim Tmp        As String
  1687.    Dim Tmp1       As String
  1688.    Dim Tmp2       As String
  1689.    Dim i          As Integer
  1690.    Dim j          As Integer
  1691.    Tmp = Text1.Text
  1692.    Title = "[" & Tmp & "] is "
  1693.    Tmp1 = Title & IIf(cCheckNumericity(Tmp), "Numeric", " not Numeric") & Chr$(13) & Chr$(13)
  1694.    cStartBasisTimer
  1695.    For i = 1 To Item
  1696.       j = cCheckNumericity(Tmp)
  1697.    Next i
  1698.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1699.    Label3.Caption = Tmp1
  1700. End Sub
  1701. Private Sub TestCheckTime()
  1702.    Dim Title      As String
  1703.    Dim Tmp        As String
  1704.    Dim Tmp1       As String
  1705.    Dim Tmp2       As String
  1706.    Dim i          As Integer
  1707.    Dim j          As Integer
  1708.    Tmp1 = "10:01 is not between 12:00 and 14:00 => " & cCheckTime(601, 720, 840) & Chr$(13) & Chr$(13)
  1709.    Tmp1 = Tmp1 & "10:01 is between 09:00 and 10:02 => " & cCheckTime(601, 540, 602) & Chr$(13) & Chr$(13)
  1710.    Tmp1 = Tmp1 & "01:01 is between 23:58 and 02:45 => " & cCheckTime(61, 1438, 165) & Chr$(13) & Chr$(13)
  1711.    cStartBasisTimer
  1712.    For i = 1 To Item
  1713.       j = cCheckTime(720, 0, 1439)
  1714.    Next i
  1715.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1716.    Label3.Caption = Tmp1
  1717. End Sub
  1718. Private Sub TestCloseAllEditForm()
  1719.    If (cCloseAllEditForm() = True) Then
  1720.       Label3.Caption = "CloseAllEditForm SUCCESS"
  1721.    Else
  1722.       Label3.Caption = "CloseAllEditForm FAIL"
  1723.    End If
  1724. End Sub
  1725. Private Sub TestClusterSize()
  1726.    Dim Title      As String
  1727.    Dim Tmp        As String
  1728.    Dim Tmp1       As String
  1729.    Dim Tmp2       As String
  1730.    Dim i          As Integer
  1731.    Dim j          As Integer
  1732.    Dim k          As Long
  1733.    Dim ErrCode    As Integer
  1734.    Tmp1 = ""
  1735.    For i = 1 To 26
  1736.       k = cGetDiskClusterSize(Chr$(64 + i))
  1737.       If (k <> True) Then
  1738.          Tmp1 = Tmp1 & "DiskClusterSize for '" & Chr$(64 + i) & ":' is " & k & Chr$(13)
  1739.       End If
  1740.    Next i
  1741.    Tmp1 = Tmp1 + Chr$(13)
  1742.    cStartBasisTimer
  1743.    For i = 1 To Item
  1744.       k = cGetDiskClusterSize("C")
  1745.    Next i
  1746.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1747.    Label3.Caption = Tmp1
  1748. End Sub
  1749. Private Sub TestCnvAE()
  1750.    Dim Title      As String
  1751.    Dim Tmp        As String
  1752.    Dim Tmp1       As String
  1753.    Dim Tmp2       As String
  1754.    Dim i          As Integer
  1755.    Dim j          As Integer
  1756.    Tmp = Text1.Text
  1757.    Title = "ASCII -> EBCDIC of '" & Tmp & "' is "
  1758.    Call cCnvASCIItoEBCDIC(Tmp)
  1759.    Tmp1 = Title & Tmp & Chr$(13) & Chr$(13)
  1760.    Title = "EBCDIC -> ASCII of '" & Tmp & "' is "
  1761.    Call cCnvEBCDICtoASCII(Tmp)
  1762.    Tmp1 = Tmp1 & Title & Tmp & Chr$(13) & Chr$(13)
  1763.    cStartBasisTimer
  1764.    For i = 1 To Item
  1765.       Call cCnvASCIItoEBCDIC(Tmp)
  1766.    Next i
  1767.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1768.    Label3.Caption = Tmp1
  1769. End Sub
  1770. Private Sub TestCombination()
  1771.    Dim Title      As String
  1772.    Dim Tmp        As String
  1773.    Dim Tmp1       As String
  1774.    Dim Tmp2       As String
  1775.    Dim Tmp3       As String
  1776.    Dim i          As Integer
  1777.    Dim j          As Integer
  1778.    Dim m1         As Double
  1779.    Dim m2         As Double
  1780.    For i = 0 To 10
  1781.       Tmp1 = Tmp1 & "Combination C(42, " & i & ") is '" & cCombination(42, i) & "'" & Chr$(13)
  1782.    Next i
  1783.    Tmp1 = Tmp1 & Chr$(13)
  1784.    For i = 42 To 32 Step -1
  1785.       Tmp1 = Tmp1 & "Combination C(42, " & i & ") is '" & cCombination(42, i) & "'" & Chr$(13)
  1786.    Next i
  1787.    Tmp1 = Tmp1 & Chr$(13)
  1788.    cStartBasisTimer
  1789.    For i = 1 To ItemFile
  1790.       m1 = cCombination(42, 6)
  1791.    Next i
  1792.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  1793.    Label3.Caption = Tmp1
  1794. End Sub
  1795. Private Sub TestCompact()
  1796.    Dim Title      As String
  1797.    Dim Tmp        As String
  1798.    Dim Tmp1       As String
  1799.    Dim Tmp2       As String
  1800.    Dim i          As Integer
  1801.    Dim j          As Integer
  1802.    Tmp = "30313233343536373839"
  1803.    Title = "Compact '" & Tmp & "' is "
  1804.    Tmp1 = Title & cCompact(Tmp) & Chr$(13) & Chr$(13)
  1805.    cStartBasisTimer
  1806.    For i = 1 To Item
  1807.       Tmp2 = cCompact(Tmp)
  1808.    Next i
  1809.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1810.    Label3.Caption = Tmp1
  1811. End Sub
  1812. Private Sub TestCompress()
  1813.    Dim Title      As String
  1814.    Dim Tmp        As String
  1815.    Dim Tmp1       As String
  1816.    Dim Tmp2       As String
  1817.    Dim i          As Integer
  1818.    Dim j          As Integer
  1819.    Tmp1 = "A " & Chr$(9) & "BC  "
  1820.    Tmp = Tmp1
  1821.    Title = "Filter chr(0),chr(9),chr(32) in [" & Tmp & "] is "
  1822.    Tmp1 = Title & cCompress(Tmp) & Chr$(13) & Chr$(13)
  1823.    cStartBasisTimer
  1824.    For i = 1 To Item
  1825.       Tmp2 = cCompress(Tmp)
  1826.    Next i
  1827.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1828.    Label3.Caption = Tmp1
  1829. End Sub
  1830. Private Sub TestCompressTab()
  1831.    Dim Title      As String
  1832.    Dim Tmp        As String
  1833.    Dim Tmp1       As String
  1834.    Dim Tmp2       As String
  1835.    Dim i          As Integer
  1836.    Dim j          As Integer
  1837.    Tmp = "A      BC   DEF  GHIJ  "
  1838.    Title = "Compress tab (3 chars) into [" & Tmp & "] is " & Chr$(13) & Chr$(13)
  1839.    Tmp1 = Title & cCompressTab(Tmp, 3) & Chr$(13) & Chr$(13)
  1840.    Tmp = "A      BC   DEF  GHIJ  "
  1841.    Title = "Compress tab (2 chars) into [" & Tmp & "] is " & Chr$(13) & Chr$(13)
  1842.    Tmp1 = Tmp1 & Title & cCompressTab(Tmp, 2) & Chr$(13) & Chr$(13)
  1843.    cStartBasisTimer
  1844.    For i = 1 To Item
  1845.       Tmp2 = cCompressTab(Tmp, 3)
  1846.    Next i
  1847.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1848.    Label3.Caption = Tmp1
  1849. End Sub
  1850. Private Sub TestControl3D()
  1851.    Dim i    As Integer
  1852.    Dim j    As Integer
  1853.    Dim r    As tagRECT
  1854.    Dim Tmp1 As String
  1855.    Call cGetCtlRect(Label3, r)
  1856.    Tmp1 = "Coordinates (in pixels) of this label are :" & Chr$(13) & Chr$(13)
  1857.    Tmp1 = Tmp1 & "Left : " & r.Left & Chr$(13)
  1858.    Tmp1 = Tmp1 & "Top : " & r.Top & Chr$(13)
  1859.    Tmp1 = Tmp1 & "Right : " & r.Right & Chr$(13)
  1860.    Tmp1 = Tmp1 & "Bottom : " & r.Bottom & Chr$(13) & Chr$(13)
  1861.    Call cGetCtlRectTwips(Label3, r)
  1862.    Tmp1 = Tmp1 & "Coordinates (in twips) of this label are :" & Chr$(13) & Chr$(13)
  1863.    Tmp1 = Tmp1 & "Left : " & r.Left & Chr$(13)
  1864.    Tmp1 = Tmp1 & "Top : " & r.Top & Chr$(13)
  1865.    Tmp1 = Tmp1 & "Right : " & r.Right & Chr$(13)
  1866.    Tmp1 = Tmp1 & "Bottom : " & r.Bottom & Chr$(13)
  1867.    Label3.Caption = Tmp1
  1868.    For i = 1 To 11
  1869.       c3D Label3, 0, 0
  1870.       DoEvents
  1871.       j = cSleep(140)
  1872.       c3D Label3, 1, 0
  1873.       DoEvents
  1874.       j = cSleep(140)
  1875.    Next i
  1876. End Sub
  1877. Private Sub TestCountDirectories()
  1878.    Dim Title      As String
  1879.    Dim Tmp        As String
  1880.    Dim Tmp1       As String
  1881.    Dim Tmp2       As String
  1882.    Dim i          As Integer
  1883.    Dim j          As Integer
  1884.    Dim k          As Integer
  1885.    Tmp1 = ""
  1886.    Tmp1 = Tmp1 & "Number of directories in C:\ is " & cCountDirectories("C:\*.*") & Chr$(13) & Chr$(13)
  1887.    Tmp1 = Tmp1 & "Number of directories in D:\ is " & cCountDirectories("D:\*.*") & Chr$(13) & Chr$(13)
  1888.    Tmp1 = Tmp1 & "Number of directories in E:\ is " & cCountDirectories("E:\*.*") & Chr$(13) & Chr$(13)
  1889.    cStartBasisTimer
  1890.    For i = 1 To 10
  1891.       k = cCountDirectories("C:\*.*")
  1892.    Next i
  1893.    Tmp1 = Tmp1 & "speed for " & 10 & " = " & cReadBasisTimer() & " ms"
  1894.    Label3.Caption = Tmp1
  1895. End Sub
  1896. Private Sub TestCountFiles()
  1897.    Dim Title      As String
  1898.    Dim Tmp        As String
  1899.    Dim Tmp1       As String
  1900.    Dim Tmp2       As String
  1901.    Dim i          As Integer
  1902.    Dim j          As Integer
  1903.    Dim k          As Integer
  1904.    Tmp1 = ""
  1905.    Tmp1 = Tmp1 & "Number of files in C:\ is " & cCountFiles("C:\*.*") & Chr$(13) & Chr$(13)
  1906.    Tmp1 = Tmp1 & "Number of files in D:\ is " & cCountFiles("D:\*.*") & Chr$(13) & Chr$(13)
  1907.    Tmp1 = Tmp1 & "Number of files in E:\ is " & cCountFiles("E:\*.*") & Chr$(13) & Chr$(13)
  1908.    cStartBasisTimer
  1909.    For i = 1 To 10
  1910.       k = cCountFiles("C:\*.*")
  1911.    Next i
  1912.    Tmp1 = Tmp1 & "speed for " & 10 & " = " & cReadBasisTimer() & " ms"
  1913.    Label3.Caption = Tmp1
  1914. End Sub
  1915. Private Sub TestCountI()
  1916.    Dim Title      As String
  1917.    Dim Tmp        As String
  1918.    Dim Tmp1       As String
  1919.    Dim Tmp2       As String
  1920.    Dim i          As Integer
  1921.    Dim j          As Integer
  1922.    Dim m          As Integer
  1923.    ReDim array(20) As Integer
  1924.    Call cRndInit(-1)
  1925.    For i = LBound(array) To UBound(array)
  1926.       array(i) = cRndI()
  1927.       List1.AddItem "" & array(i)
  1928.    Next i
  1929.    Tmp1 = Tmp1 & "Count '" & array(5) & "' is " & cCountI(array(), array(5)) & Chr$(13)
  1930.    Tmp1 = Tmp1 & "Count '" & array(10) & "' is " & cCountI(array(), array(10)) & Chr$(13)
  1931.    Tmp1 = Tmp1 & "Count '" & array(15) & "' is " & cCountI(array(), array(15)) & Chr$(13)
  1932.    Tmp1 = Tmp1 & "Count '" & array(20) & "' is " & cCountI(array(), array(20)) & Chr$(13)
  1933.    Tmp1 = Tmp1 & "Count '" & -1234 & "' is " & cCountI(array(), -1234) & Chr$(13)
  1934.    cStartBasisTimer
  1935.    For i = 1 To ItemFile
  1936.       j = cCountI(array(), array(1))
  1937.    Next i
  1938.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  1939.    Label3.Caption = Tmp1
  1940. End Sub
  1941. Private Sub TestCreateAndFill()
  1942.    Dim Title      As String
  1943.    Dim Tmp        As String
  1944.    Dim Tmp1       As String
  1945.    Dim Tmp2       As String
  1946.    Dim i          As Integer
  1947.    Dim j          As Integer
  1948.    Tmp = Text1.Text
  1949.    Title = "Create and Fill a string of 40 chars with [" & Tmp & "] is "
  1950.    Tmp1 = Title & cCreateAndFill(40, Tmp) & Chr$(13) & Chr$(13)
  1951.    cStartBasisTimer
  1952.    For i = 1 To Item
  1953.       Tmp2 = cCreateAndFill(40, Tmp)
  1954.    Next i
  1955.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1956.    Label3.Caption = Tmp1
  1957. End Sub
  1958. Private Sub TestCreateBits()
  1959.    Dim Title      As String
  1960.    Dim Tmp        As String
  1961.    Dim Tmp1       As String
  1962.    Dim Tmp2       As String
  1963.    Dim i          As Integer
  1964.    Dim j          As Integer
  1965.    Tmp = Text1.Text
  1966.    Title = "Create a string for 1024 bits is "
  1967.    Tmp1 = Title & Len(cCreateBits(1024)) & " bytes" & Chr$(13) & Chr$(13)
  1968.    cStartBasisTimer
  1969.    For i = 1 To Item
  1970.       Tmp2 = cCreateBits(1024)
  1971.    Next i
  1972.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  1973.    Label3.Caption = Tmp1
  1974. End Sub
  1975. Private Sub TestCustomControls()
  1976.    Dim i       As Integer
  1977.    Dim N       As Integer
  1978.    Dim Tmp1    As String
  1979.    N = frmT2W.Count - 1
  1980.    For i = 0 To N
  1981.       Tmp1 = Tmp1 + "Control name is '" & cGetCtlNameIndex(frmT2W.Controls(i)) & "'     Control Class is '" & cGetCtlClass(frmT2W.Controls(i)) & "'" + Chr$(13)
  1982.    Next i
  1983.    Label3.Caption = Tmp1
  1984. End Sub
  1985. Private Sub TestDAL(Management As Integer)
  1986.    Dim Tmp        As String
  1987.    Dim ErrCode    As Integer
  1988.    Dim DA         As tagDISKARRAY
  1989.    ErrCode = cMakeDir("c:\t2w_tmp")
  1990.    DA.nFilename = "c:\t2w_tmp\dalong.tmp"
  1991.    DA.nType = DA_LONG
  1992.    DA.nIsTyped = False
  1993.    DA.nRows = 100
  1994.    DA.nCols = 100
  1995.    DA.nSheets = 2
  1996.    Select Case Management
  1997.       Case True      'create
  1998.          ErrCode = cDACreate(DA, True)
  1999.       Case False     'use
  2000.          ErrCode = cDACreate(DA, False)
  2001.       Case 1         'clear all
  2002.          ErrCode = cDACreate(DA, False)
  2003.          If (ErrCode = -1) Then ErrCode = cDAClear(DA)
  2004.       Case 2         'clear sheet 2
  2005.          ErrCode = cDACreate(DA, False)
  2006.          If (ErrCode = -1) Then ErrCode = cDAClearSheet(DA, 2)
  2007.       Case 3         'clear last row
  2008.          ErrCode = cDACreate(DA, False)
  2009.          If (ErrCode = -1) Then ErrCode = cDAClearRow(DA, DA.nRows, 1)
  2010.       Case 4         'clear last col
  2011.          ErrCode = cDACreate(DA, False)
  2012.          If (ErrCode = -1) Then ErrCode = cDAClearCol(DA, DA.nCols, 1)
  2013.       Case 5         'clear last row in all sheets
  2014.          ErrCode = cDACreate(DA, False)
  2015.          If (ErrCode = -1) Then ErrCode = cDAClearRow(DA, DA.nRows, -1)
  2016.       Case 6         'clear last col in all sheets
  2017.          ErrCode = cDACreate(DA, False)
  2018.          If (ErrCode = -1) Then ErrCode = cDAClearCol(DA, DA.nCols, -1)
  2019.    End Select
  2020.    Tmp = Tmp & "ErrCode = " & ErrCode & Chr$(13) & Chr$(13)
  2021.    If (ErrCode = True) Then
  2022.       
  2023.       Tmp = Tmp & "DA.daSize       = " & DA.daSize & Chr$(13)
  2024.       Tmp = Tmp & "DA.Signature    = " & DA.signature & Chr$(13)
  2025.       Tmp = Tmp & "DA.nFilename    = " & Trim$(DA.nFilename) & Chr$(13)
  2026.       Tmp = Tmp & "DA.nType        = " & DA.nType & Chr$(13)
  2027.       Tmp = Tmp & "DA.nIsTyped     = " & DA.nIsTyped & Chr$(13)
  2028.       Tmp = Tmp & "DA.nRows        = " & DA.nRows & Chr$(13)
  2029.       Tmp = Tmp & "DA.nCols        = " & DA.nCols & Chr$(13)
  2030.       Tmp = Tmp & "DA.nSheets      = " & DA.nSheets & Chr$(13)
  2031.       Tmp = Tmp & "DA.rHandle      = " & DA.rHandle & Chr$(13)
  2032.       Tmp = Tmp & "DA.rElementSize = " & DA.rElementSize & Chr$(13)
  2033.       Tmp = Tmp & "DA.rFileSize    = " & DA.rFileSize & Chr$(13)
  2034.       Tmp = Tmp & "DA.rParts       = " & DA.rParts & Chr$(13)
  2035.       Tmp = Tmp & "DA.rRemain      = " & DA.rRemain & Chr$(13)
  2036.       Tmp = Tmp & "DA.rSheetSize   = " & DA.rSheetSize & Chr$(13)
  2037.       Tmp = Tmp & "DA.rTime        = " & DA.rTime & Chr$(13) & Chr$(13)
  2038.       If (Management = True) Then
  2039.          Call cDAPut(DA, 1, 1, 1, 12345)
  2040.          Call cDAPut(DA, 1, DA.nCols, 1, 56789)
  2041.          Call cDAPut(DA, DA.nRows, 1, 1, 54321)
  2042.          Call cDAPut(DA, DA.nRows, DA.nCols, 1, 98765)
  2043.          Call cDAPut(DA, 1, 1, 2, 12345678)
  2044.          Call cDAPut(DA, 1, DA.nCols, 2, 34567890)
  2045.          Call cDAPut(DA, DA.nRows, 1, 2, 123456789)
  2046.          Call cDAPut(DA, DA.nRows, DA.nCols, 2, 987654321)
  2047.       End If
  2048.       Tmp = Tmp & "R:1  , C:1  , D:1, Value : " & cDAGet(DA, 1, 1, 1) & "   , time : " & DA.rTime & Chr$(13)
  2049.       Tmp = Tmp & "R:1  , C:" & DA.nCols & ", D:1, Value : " & cDAGet(DA, 1, DA.nCols, 1) & "   , time : " & DA.rTime & Chr$(13)
  2050.       Tmp = Tmp & "R:" & DA.nRows & ", C:1  , D:1, Value : " & cDAGet(DA, DA.nRows, 1, 1) & "   , time : " & DA.rTime & Chr$(13)
  2051.       Tmp = Tmp & "R:" & DA.nRows & ", C:" & DA.nCols & ", D:1, Value : " & cDAGet(DA, DA.nRows, DA.nCols, 1) & "   , time : " & DA.rTime & Chr$(13)
  2052.       Tmp = Tmp & "R:1  , C:1  , D:2, Value : " & cDAGet(DA, 1, 1, 2) & "   , time : " & DA.rTime & Chr$(13)
  2053.       Tmp = Tmp & "R:1  , C:" & DA.nCols & ", D:2, Value : " & cDAGet(DA, 1, DA.nCols, 2) & "   , time : " & DA.rTime & Chr$(13)
  2054.       Tmp = Tmp & "R:" & DA.nRows & ", C:1  , D:2, Value : " & cDAGet(DA, DA.nRows, 1, 2) & "   , time : " & DA.rTime & Chr$(13)
  2055.       Tmp = Tmp & "R:" & DA.nRows & ", C:" & DA.nCols & ", D:2, Value : " & cDAGet(DA, DA.nRows, DA.nCols, 2) & "   , time : " & DA.rTime & Chr$(13)
  2056.    End If
  2057.    Call cDAClose(DA, False)
  2058.    Label3.Caption = Tmp
  2059. End Sub
  2060. Private Sub TestDAStr(Management As Integer)
  2061.    Dim Tmp        As String
  2062.    Dim ErrCode    As Integer
  2063.    Dim DA         As tagDISKARRAY
  2064.    ErrCode = cMakeDir("c:\t2w_tmp")
  2065.    DA.nFilename = "c:\t2w_tmp\dastring.tmp"
  2066.    DA.nType = 50
  2067.    DA.nIsTyped = False
  2068.    DA.nRows = 100
  2069.    DA.nCols = 100
  2070.    DA.nSheets = 2
  2071.    Select Case Management
  2072.       Case True      'create
  2073.          ErrCode = cDACreate(DA, True)
  2074.       Case False     'use
  2075.          ErrCode = cDACreate(DA, False)
  2076.       Case 1         'clear all
  2077.          ErrCode = cDACreate(DA, False)
  2078.          If (ErrCode = -1) Then ErrCode = cDAClear(DA)
  2079.       Case 2         'clear sheet 2
  2080.          ErrCode = cDACreate(DA, False)
  2081.          If (ErrCode = -1) Then ErrCode = cDAClearSheet(DA, 2)
  2082.       Case 3         'clear last row
  2083.          ErrCode = cDACreate(DA, False)
  2084.          If (ErrCode = -1) Then ErrCode = cDAClearRow(DA, DA.nRows, 1)
  2085.       Case 4         'clear last col
  2086.          ErrCode = cDACreate(DA, False)
  2087.          If (ErrCode = -1) Then ErrCode = cDAClearCol(DA, DA.nCols, 1)
  2088.       Case 5         'clear last row in all sheets
  2089.          ErrCode = cDACreate(DA, False)
  2090.          If (ErrCode = -1) Then ErrCode = cDAClearRow(DA, DA.nRows, -1)
  2091.       Case 6         'clear last col in all sheets
  2092.          ErrCode = cDACreate(DA, False)
  2093.          If (ErrCode = -1) Then ErrCode = cDAClearCol(DA, DA.nCols, -1)
  2094.    End Select
  2095.    Tmp = Tmp & "ErrCode = " & ErrCode & Chr$(13) & Chr$(13)
  2096.    If (ErrCode = True) Then
  2097.       
  2098.       Tmp = Tmp & "DA.daSize       = " & DA.daSize & Chr$(13)
  2099.       Tmp = Tmp & "DA.Signature    = " & DA.signature & Chr$(13)
  2100.       Tmp = Tmp & "DA.nFilename    = " & Trim$(DA.nFilename) & Chr$(13)
  2101.       Tmp = Tmp & "DA.nType        = " & DA.nType & Chr$(13)
  2102.       Tmp = Tmp & "DA.nIsTyped     = " & DA.nIsTyped & Chr$(13)
  2103.       Tmp = Tmp & "DA.nRows        = " & DA.nRows & Chr$(13)
  2104.       Tmp = Tmp & "DA.nCols        = " & DA.nCols & Chr$(13)
  2105.       Tmp = Tmp & "DA.nSheets      = " & DA.nSheets & Chr$(13)
  2106.       Tmp = Tmp & "DA.rHandle      = " & DA.rHandle & Chr$(13)
  2107.       Tmp = Tmp & "DA.rElementSize = " & DA.rElementSize & Chr$(13)
  2108.       Tmp = Tmp & "DA.rFileSize    = " & DA.rFileSize & Chr$(13)
  2109.       Tmp = Tmp & "DA.rParts       = " & DA.rParts & Chr$(13)
  2110.       Tmp = Tmp & "DA.rRemain      = " & DA.rRemain & Chr$(13)
  2111.       Tmp = Tmp & "DA.rSheetSize   = " & DA.rSheetSize & Chr$(13)
  2112.       Tmp = Tmp & "DA.rTime        = " & DA.rTime & Chr$(13) & Chr$(13)
  2113.       If (Management = True) Then
  2114.       
  2115.          Call cDAPut(DA, 1, 1, 1, "D:1, ABCDEFGHIJ")
  2116.          Call cDAPut(DA, 1, DA.nCols, 1, "D:1, abcdefghij")
  2117.          Call cDAPut(DA, DA.nRows, 1, 1, "D:1, OPQRSTUVWXYZ")
  2118.          Call cDAPut(DA, DA.nRows, DA.nCols, 1, "D:1, oprqstuvwxyz")
  2119.          Call cDAPut(DA, 1, 1, 2, "D:2, 1234567890")
  2120.          Call cDAPut(DA, 1, DA.nCols, 2, "D:2, 0987654321")
  2121.          Call cDAPut(DA, DA.nRows, 1, 2, "D:2, 12345ABCDE")
  2122.          Call cDAPut(DA, DA.nRows, DA.nCols, 2, "D:2, VWXYZ54321")
  2123.       End If
  2124.       Tmp = Tmp & "R:1  , C:1  , D:1, Value : " & Trim$(cDAGet(DA, 1, 1, 1)) & "   , time : " & DA.rTime & Chr$(13)
  2125.       Tmp = Tmp & "R:1  , C:" & DA.nCols & ", D:1, Value : " & Trim$(cDAGet(DA, 1, DA.nCols, 1)) & "   , time : " & DA.rTime & Chr$(13)
  2126.       Tmp = Tmp & "R:" & DA.nRows & ", C:1  , D:1, Value : " & Trim$(cDAGet(DA, DA.nRows, 1, 1)) & "   , time : " & DA.rTime & Chr$(13)
  2127.       Tmp = Tmp & "R:" & DA.nRows & ", C:" & DA.nCols & ", D:1, Value : " & Trim$(cDAGet(DA, DA.nRows, DA.nCols, 1)) & "   , time : " & DA.rTime & Chr$(13)
  2128.       Tmp = Tmp & "R:1  , C:1  , D:2, Value : " & Trim$(cDAGet(DA, 1, 1, 2)) & "   , time : " & DA.rTime & Chr$(13)
  2129.       Tmp = Tmp & "R:1  , C:" & DA.nCols & ", D:2, Value : " & Trim$(cDAGet(DA, 1, DA.nCols, 2)) & "   , time : " & DA.rTime & Chr$(13)
  2130.       Tmp = Tmp & "R:" & DA.nRows & ", C:1  , D:2, Value : " & Trim$(cDAGet(DA, DA.nRows, 1, 2)) & "   , time : " & DA.rTime & Chr$(13)
  2131.       Tmp = Tmp & "R:" & DA.nRows & ", C:" & DA.nCols & ", D:2, Value : " & Trim$(cDAGet(DA, DA.nRows, DA.nCols, 2)) & "   , time : " & DA.rTime & Chr$(13)
  2132.    End If
  2133.    Call cDAClose(DA, False)
  2134.    Label3.Caption = Tmp
  2135. End Sub
  2136. Private Sub TestDate()
  2137.    Dim Title      As String
  2138.    Dim Tmp        As String
  2139.    Dim Tmp1       As String
  2140.    Dim Tmp2       As String
  2141.    Dim i          As Integer
  2142.    Dim j          As Integer
  2143.    Dim nYear      As Integer
  2144.    Dim nMonth     As Integer
  2145.    Dim nDay       As Integer
  2146.    Dim nNow       As Long
  2147.    nNow = Int(Now)
  2148.    nYear = Year(nNow)
  2149.    nMonth = Month(nNow)
  2150.    nDay = Day(nNow)
  2151.    Tmp1 = "Today is the '" & Format$(Int(Now), "short date") & "'" & Chr$(13) & Chr$(13)
  2152.    Tmp1 = Tmp1 & "Day of the week (ISO, U.S., Special) is (" & cDayOfWeek(nYear, nMonth, nDay, True) & ", " & cDayOfWeek(nYear, nMonth, nDay, False) & ", " & cDayOfWeek(nYear, nMonth, nDay, 1) & ")" & Chr$(13) & Chr$(13)
  2153.    Tmp1 = Tmp1 & "Day of the year is '" & cDayOfYear(nYear, nMonth, nDay) & "'" & Chr$(13) & Chr$(13)
  2154.    Tmp1 = Tmp1 & "Week of the year (ISO, U.S., Special) is (" & cWeekOfYear(nYear, nMonth, nDay, True) & ", " & cWeekOfYear(nYear, nMonth, nDay, False) & ", " & cWeekOfYear(nYear, nMonth, nDay, 1) & ")" & Chr$(13) & Chr$(13)
  2155.    nNow = cDateToScalar(nYear, nMonth, nDay)
  2156.    Tmp1 = Tmp1 & "Scalar day is '" & nNow & "'" & Chr$(13)
  2157.    nYear = 0
  2158.    nMonth = 0
  2159.    nDay = 0
  2160.    Call cScalarToDate(nNow, nYear, nMonth, nDay)
  2161.    Tmp1 = Tmp1 & "Year : " & nYear & ", Month : " & nMonth & ", Day : " & nDay & Chr$(13) & Chr$(13) & Chr$(13)
  2162.    nNow = Int(Now)
  2163.    nYear = Year(nNow)
  2164.    nMonth = 1
  2165.    nDay = 1
  2166.    Tmp1 = Tmp1 & "First Day is the '" & Format$(DateSerial(nYear, nMonth, nDay), "short date") & "'" & Chr$(13) & Chr$(13)
  2167.    Tmp1 = Tmp1 & "Day of the week (ISO, U.S., Special) is (" & cDayOfWeek(nYear, nMonth, nDay, True) & ", " & cDayOfWeek(nYear, nMonth, nDay, False) & ", " & cDayOfWeek(nYear, nMonth, nDay, 1) & ")" & Chr$(13) & Chr$(13)
  2168.    Tmp1 = Tmp1 & "Day of the year is '" & cDayOfYear(nYear, nMonth, nDay) & "'" & Chr$(13) & Chr$(13)
  2169.    Tmp1 = Tmp1 & "Week of the year (ISO, U.S., Special) is (" & cWeekOfYear(nYear, nMonth, nDay, True) & ", " & cWeekOfYear(nYear, nMonth, nDay, False) & ", " & cWeekOfYear(nYear, nMonth, nDay, 1) & ")" & Chr$(13) & Chr$(13)
  2170.    nNow = cDateToScalar(nYear, nMonth, nDay)
  2171.    Tmp1 = Tmp1 & "Scalar day is '" & nNow & "'" & Chr$(13)
  2172.    nYear = 0
  2173.    nMonth = 0
  2174.    nDay = 0
  2175.    Call cScalarToDate(nNow, nYear, nMonth, nDay)
  2176.    Tmp1 = Tmp1 & "Year : " & nYear & ", Month : " & nMonth & ", Day : " & nDay & Chr$(13) & Chr$(13)
  2177.    Label3.Caption = Tmp1
  2178. End Sub
  2179. Private Sub TestDAType(Management As Integer)
  2180.    Dim Tmp        As String
  2181.    Dim ErrCode    As Integer
  2182.    Dim DA         As tagDISKARRAY
  2183.    Dim TE         As tagTASKENTRY
  2184.    ErrCode = cMakeDir("c:\t2w_tmp")
  2185.    DA.nFilename = "c:\t2w_tmp\datype.tmp"
  2186.    DA.nType = Len(TE)
  2187.    DA.nIsTyped = True
  2188.    DA.nRows = 100
  2189.    DA.nCols = 100
  2190.    DA.nSheets = 2
  2191.    Select Case Management
  2192.       Case True      'create
  2193.          ErrCode = cDACreate(DA, True)
  2194.       Case False     'use
  2195.          ErrCode = cDACreate(DA, False)
  2196.       Case 1         'clear all
  2197.          ErrCode = cDACreate(DA, False)
  2198.          If (ErrCode = -1) Then ErrCode = cDAClear(DA)
  2199.       Case 2         'clear sheet 2
  2200.          ErrCode = cDACreate(DA, False)
  2201.          If (ErrCode = -1) Then ErrCode = cDAClearSheet(DA, 2)
  2202.       Case 3         'clear last row
  2203.          ErrCode = cDACreate(DA, False)
  2204.          If (ErrCode = -1) Then ErrCode = cDAClearRow(DA, DA.nRows, 1)
  2205.       Case 4         'clear last col
  2206.          ErrCode = cDACreate(DA, False)
  2207.          If (ErrCode = -1) Then ErrCode = cDAClearCol(DA, DA.nCols, 1)
  2208.       Case 5         'clear last row in all sheets
  2209.          ErrCode = cDACreate(DA, False)
  2210.          If (ErrCode = -1) Then ErrCode = cDAClearRow(DA, DA.nRows, -1)
  2211.       Case 6         'clear last col in all sheets
  2212.          ErrCode = cDACreate(DA, False)
  2213.          If (ErrCode = -1) Then ErrCode = cDAClearCol(DA, DA.nCols, -1)
  2214.       End Select
  2215.    Tmp = Tmp & "ErrCode = " & ErrCode & Chr$(13) & Chr$(13)
  2216.    If (ErrCode = True) Then
  2217.       
  2218.       Tmp = Tmp & "DA.daSize       = " & DA.daSize & Chr$(13)
  2219.       Tmp = Tmp & "DA.Signature    = " & DA.signature & Chr$(13)
  2220.       Tmp = Tmp & "DA.nFilename    = " & Trim$(DA.nFilename) & Chr$(13)
  2221.       Tmp = Tmp & "DA.nType        = " & DA.nType & Chr$(13)
  2222.       Tmp = Tmp & "DA.nIsTyped     = " & DA.nIsTyped & Chr$(13)
  2223.       Tmp = Tmp & "DA.nRows        = " & DA.nRows & Chr$(13)
  2224.       Tmp = Tmp & "DA.nCols        = " & DA.nCols & Chr$(13)
  2225.       Tmp = Tmp & "DA.nSheets      = " & DA.nSheets & Chr$(13)
  2226.       Tmp = Tmp & "DA.rHandle      = " & DA.rHandle & Chr$(13)
  2227.       Tmp = Tmp & "DA.rElementSize = " & DA.rElementSize & Chr$(13)
  2228.       Tmp = Tmp & "DA.rFileSize    = " & DA.rFileSize & Chr$(13)
  2229.       Tmp = Tmp & "DA.rParts       = " & DA.rParts & Chr$(13)
  2230.       Tmp = Tmp & "DA.rRemain      = " & DA.rRemain & Chr$(13)
  2231.       Tmp = Tmp & "DA.rSheetSize   = " & DA.rSheetSize & Chr$(13)
  2232.       Tmp = Tmp & "DA.rTime        = " & DA.rTime & Chr$(13) & Chr$(13)
  2233.       If (Management = True) Then
  2234.          ErrCode = cTasks(TE, True)
  2235.          Call cDAPutType(DA, 1, 1, 1, TE)
  2236.          ErrCode = cTasks(TE, False)
  2237.          Call cDAPutType(DA, 1, DA.nCols, 1, TE)
  2238.          ErrCode = cTasks(TE, False)
  2239.          Call cDAPutType(DA, DA.nRows, 1, 1, TE)
  2240.          ErrCode = cTasks(TE, False)
  2241.          Call cDAPutType(DA, DA.nRows, DA.nCols, 1, TE)
  2242.          ErrCode = cTasks(TE, False)
  2243.          Call cDAPutType(DA, 1, 1, 2, TE)
  2244.          ErrCode = cTasks(TE, False)
  2245.          Call cDAPutType(DA, 1, DA.nCols, 2, TE)
  2246.          ErrCode = cTasks(TE, False)
  2247.          Call cDAPutType(DA, DA.nRows, 1, 2, TE)
  2248.          ErrCode = cTasks(TE, False)
  2249.          Call cDAPutType(DA, DA.nRows, DA.nCols, 2, TE)
  2250.          
  2251.       End If
  2252.       Call cDAGetType(DA, 1, 1, 1, TE)
  2253.       Tmp = Tmp & "R:1  , C:1  , D:1, TE.szModule : " & cCompress(TE.szModule) & "   , time : " & DA.rTime & Chr$(13)
  2254.       Call cDAGetType(DA, 1, DA.nCols, 1, TE)
  2255.       Tmp = Tmp & "R:1  , C:" & DA.nCols & ", D:1, TE.szModule : " & cCompress(TE.szModule) & "   , time : " & DA.rTime & Chr$(13)
  2256.       Call cDAGetType(DA, DA.nRows, 1, 1, TE)
  2257.       Tmp = Tmp & "R:" & DA.nRows & ", C:1  , D:1, TE.szModule : " & cCompress(TE.szModule) & "   , time : " & DA.rTime & Chr$(13)
  2258.       Call cDAGetType(DA, DA.nRows, DA.nCols, 1, TE)
  2259.       Tmp = Tmp & "R:" & DA.nRows & ", C:" & DA.nCols & ", D:1, TE.szModule : " & cCompress(TE.szModule) & "   , time : " & DA.rTime & Chr$(13)
  2260.       Call cDAGetType(DA, 1, 1, 2, TE)
  2261.       Tmp = Tmp & "R:1  , C:1  , D:2, TE.szModule : " & cCompress(TE.szModule) & "   , time : " & DA.rTime & Chr$(13)
  2262.       Call cDAGetType(DA, 1, DA.nCols, 2, TE)
  2263.       Tmp = Tmp & "R:1  , C:" & DA.nCols & ", D:2, TE.szModule : " & cCompress(TE.szModule) & "   , time : " & DA.rTime & Chr$(13)
  2264.       Call cDAGetType(DA, DA.nRows, 1, 2, TE)
  2265.       Tmp = Tmp & "R:" & DA.nRows & ", C:1  , D:2, TE.szModule : " & cCompress(TE.szModule) & "   , time : " & DA.rTime & Chr$(13)
  2266.       Call cDAGetType(DA, DA.nRows, DA.nCols, 2, TE)
  2267.       Tmp = Tmp & "R:" & DA.nRows & ", C:" & DA.nCols & ", D:2, TE.szModule : " & cCompress(TE.szModule) & "   , time : " & DA.rTime & Chr$(13)
  2268.    End If
  2269.    Call cDAClose(DA, False)
  2270.    Label3.Caption = Tmp
  2271. End Sub
  2272. Private Sub TestDecrypt()
  2273.    Dim Title      As String
  2274.    Dim Tmp        As String
  2275.    Dim Tmp1       As String
  2276.    Dim Tmp2       As String
  2277.    Dim Tmp3       As String
  2278.    Dim i          As Integer
  2279.    Dim j          As Integer
  2280.    Tmp3 = cToHexa(Format$(76543210))
  2281.    Tmp2 = "T2WIN-16"
  2282.    For i = ENCRYPT_LEVEL_0 To ENCRYPT_LEVEL_4
  2283.       Tmp = cEncrypt(Tmp2, Tmp3, i)
  2284.       Tmp1 = Tmp1 & "Decrypt (level " & i & ") of [" & Tmp & "] with '?' is "
  2285.       Tmp1 = Tmp1 & "[" & cDecrypt(Tmp, Tmp3, i) & "]" & Chr$(13) & Chr$(13)
  2286.    Next i
  2287.    cStartBasisTimer
  2288.    For i = 1 To Item
  2289.       Tmp2 = cDecrypt(Tmp2, Tmp1, ENCRYPT_LEVEL_3)
  2290.    Next i
  2291.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  2292.    Label3.Caption = Tmp1
  2293. End Sub
  2294. Private Sub TestDeviationI()
  2295.    Dim Title      As String
  2296.    Dim Tmp        As String
  2297.    Dim Tmp1       As String
  2298.    Dim Tmp2       As String
  2299.    Dim i          As Integer
  2300.    Dim j          As Integer
  2301.    Dim m          As Double
  2302.    Dim N          As Double
  2303.    ReDim array(ItemMean) As Integer
  2304.    Randomize Timer
  2305.    m = 0
  2306.    For i = LBound(array) To UBound(array)
  2307.       array(i) = Int(RandI * Rnd(1))
  2308.       m = m + array(i)
  2309.       List1.AddItem "" & array(i)
  2310.    Next i
  2311.    m = m / (UBound(array) - LBound(array) + 1)
  2312.    N = 0
  2313.    For i = LBound(array) To UBound(array)
  2314.       N = N + ((array(i) - m) * (array(i) - m))
  2315.    Next i
  2316.    N = (Sqr(N) / (UBound(array) - LBound(array) + 1))
  2317.    Tmp1 = "The Deviation of a integer array of " & (ItemMean + 1) & " elements is " & Chr$(13) & Chr$(13) & cDeviationI(array()) & " (" & N & ")" & Chr$(13) & Chr$(13)
  2318.    cStartBasisTimer
  2319.    For i = 1 To ItemFile
  2320.       m = cDeviationI(array())
  2321.    Next i
  2322.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  2323.    Label3.Caption = Tmp1
  2324. End Sub
  2325. Private Sub TestDOSGetVolLabel()
  2326.    Dim Title         As String
  2327.    Dim Tmp           As String
  2328.    Dim Tmp1          As String
  2329.    Dim Tmp2          As String
  2330.    Dim i             As Integer
  2331.    Dim j             As Integer
  2332.    For i = 1 To 4
  2333.       Tmp2 = cDOSGetVolumeLabel(Chr$(64 + i))
  2334.       If (Len(Tmp2) > 0) Then
  2335.          Tmp1 = Tmp1 & "Drive " & Chr$(64 + i) & " : '" & Tmp2 & "'" & Chr$(13)
  2336.       Else
  2337.          Tmp1 = Tmp1 & "Drive " & Chr$(64 + i) & " : no volume label" & Chr$(13)
  2338.       End If
  2339.    Next i
  2340.    Tmp1 = Tmp1 + Chr$(13)
  2341.    cStartBasisTimer
  2342.    For i = 1 To Item
  2343.       Tmp2 = cDOSGetVolumeLabel("C")
  2344.    Next i
  2345.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  2346.    Label3.Caption = Tmp1
  2347. End Sub
  2348. Private Sub TestDOSMediaID()
  2349.    Dim Title         As String
  2350.    Dim Tmp           As String
  2351.    Dim Tmp1          As String
  2352.    Dim Tmp2          As String
  2353.    Dim i             As Integer
  2354.    Dim j             As Integer
  2355.    Dim MEDIAID       As tagMEDIAID
  2356.    For i = 1 To 7
  2357.       If (cDOSGetMediaID(Chr$(64 + i), MEDIAID) = True) Then
  2358.          Tmp1 = Tmp1 & "Drive " & Chr$(64 + i) & " : " & Chr$(13)
  2359.          Tmp1 = Tmp1 & "   SerialNumber is '" & Hex$(MEDIAID.SerialNumber) & "'" & Chr$(13)
  2360.          Tmp1 = Tmp1 & "   VolLabel is '" & MEDIAID.VolLabel & "'" & Chr$(13)
  2361.          Tmp1 = Tmp1 & "   FileSysType is '" & MEDIAID.FileSysType & "'" & Chr$(13) & Chr$(13)
  2362.       Else
  2363.          Tmp1 = Tmp1 & "Drive " & Chr$(64 + i) & " : no media id" & Chr$(13) & Chr$(13)
  2364.       End If
  2365.    Next i
  2366.    Tmp1 = Tmp1 + Chr$(13)
  2367.    cStartBasisTimer
  2368.    For i = 1 To Item
  2369.       j = cDOSGetMediaID("", MEDIAID)
  2370.    Next i
  2371.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  2372.    Label3.Caption = Tmp1
  2373. End Sub
  2374. Private Sub TestDriveType()
  2375.    Dim Title      As String
  2376.    Dim Tmp        As String
  2377.    Dim Tmp1       As String
  2378.    Dim Tmp2       As String
  2379.    Dim i          As Integer
  2380.    Dim j          As Integer
  2381.    Tmp1 = ""
  2382.    For i = 1 To 26
  2383.       j = cGetDriveType(Chr$(64 + i))
  2384.       If (j > 0) Then
  2385.          Tmp1 = Tmp1 & "'" & Chr$(64 + i) & ":' is "
  2386.          Select Case j
  2387.             Case 2
  2388.                Tmp1 = Tmp1 & "removable disk" & Chr$(13)
  2389.             Case 3
  2390.                Tmp1 = Tmp1 & "fixed disk" & Chr$(13)
  2391.             Case 4
  2392.                Tmp1 = Tmp1 & "remote disk" & Chr$(13)
  2393.             Case 20
  2394.                Tmp1 = Tmp1 & "cd-rom" & Chr$(13)
  2395.          End Select
  2396.       End If
  2397.    Next i
  2398.    Tmp1 = Tmp1 + Chr$(13)
  2399.    cStartBasisTimer
  2400.    For i = 1 To Item
  2401.       j = cGetDriveType("C")
  2402.    Next i
  2403.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  2404.    Label3.Caption = Tmp1
  2405. End Sub
  2406. Private Sub TestEncrypt()
  2407.    Dim Title      As String
  2408.    Dim Tmp        As String
  2409.    Dim Tmp1       As String
  2410.    Dim Tmp2       As String
  2411.    Dim Tmp3       As String
  2412.    Dim i          As Integer
  2413.    Dim j          As Integer
  2414.    Tmp3 = cToHexa(Format$(76543210))
  2415.    Tmp2 = "T2WIN-16"
  2416.    Tmp = Text1.Text
  2417.    For i = ENCRYPT_LEVEL_0 To ENCRYPT_LEVEL_4
  2418.       Tmp1 = Tmp1 & "Encrypt (level " & i & ") of [" & Tmp2 & "] with '?' is "
  2419.       Tmp1 = Tmp1 & "[" & cEncrypt(Tmp2, Tmp3, i) & "]" & Chr$(13) & Chr$(13)
  2420.    Next i
  2421.    cStartBasisTimer
  2422.    For i = 1 To Item
  2423.       Tmp2 = cEncrypt(Tmp2, Tmp1, ENCRYPT_LEVEL_3)
  2424.    Next i
  2425.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  2426.    Label3.Caption = Tmp1
  2427. End Sub
  2428. Private Sub TestExpandTab()
  2429.    Dim Title      As String
  2430.    Dim Tmp        As String
  2431.    Dim Tmp1       As String
  2432.    Dim Tmp2       As String
  2433.    Dim i          As Integer
  2434.    Dim j          As Integer
  2435.    Tmp = "A" & Chr$(9) & "BC" & Chr$(9) & "DEF" & Chr$(9) & "GHIJ" & Chr$(9) & ""
  2436.    Title = "Expand tab (2 chars) into [" & Tmp & "] is " & Chr$(13) & Chr$(13)
  2437.    Tmp1 = Title & cExpandTab(Tmp, 2) & Chr$(13) & Chr$(13)
  2438.    Tmp = "A" & Chr$(9) & "BC" & Chr$(9) & "DEF" & Chr$(9) & "GHIJ" & Chr$(9) & ""
  2439.    Title = "Expand tab (4 chars) into [" & Tmp & "] is " & Chr$(13) & Chr$(13)
  2440.    Tmp1 = Tmp1 & Title & cExpandTab(Tmp, 4) & Chr$(13) & Chr$(13)
  2441.    cStartBasisTimer
  2442.    For i = 1 To Item
  2443.       Tmp2 = cExpandTab(Tmp, 3)
  2444.    Next i
  2445.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  2446.    Label3.Caption = Tmp1
  2447. End Sub
  2448. Private Sub TestFileChangeChars()
  2449.    Dim Title      As String
  2450.    Dim Tmp        As String
  2451.    Dim Tmp1       As String
  2452.    Dim Tmp2       As String
  2453.    Dim Tmp3       As String
  2454.    Dim Tmp4       As String
  2455.    Dim i          As Integer
  2456.    Dim j          As Long
  2457.    Tmp1 = ""
  2458.    Tmp = "c:\autoexec.bat"
  2459.    Tmp2 = "c:\autoexec.tab"
  2460.    Tmp3 = "REM"
  2461.    Tmp4 = "rem"
  2462.    Tmp1 = Tmp1 & "File Copy " & Tmp & " to " & Tmp2 & " is " & cFileCopy(Tmp, Tmp2) & Chr$(13) & Chr$(13)
  2463.    Tmp1 = Tmp1 & "File Change Chars : '" & Tmp3 & "' -> '" & Tmp4 & "' in '" & Tmp2 & "' is " & cFileChangeChars(Tmp2, Tmp3, Tmp4, "c:\tmp.tmp") & Chr$(13) & Chr$(13)
  2464.    cStartBasisTimer
  2465.    For i = 1 To Item
  2466.       If ((i Mod 2) = 1) Then
  2467.          j = cFileChangeChars(Tmp2, Tmp3, Tmp4, "")
  2468.       Else
  2469.          j = cFileChangeChars(Tmp2, Tmp4, Tmp3, "")
  2470.       End If
  2471.    Next i
  2472.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  2473.    Label3.Caption = Tmp1
  2474. End Sub
  2475. Private Sub TestFileCmp()
  2476.    Dim Title      As String
  2477.    Dim Tmp        As String
  2478.    Dim Tmp1       As String
  2479.    Dim Tmp2       As String
  2480.    Dim i          As Integer
  2481.    Dim j          As Integer
  2482.    Tmp1 = ""
  2483.    Tmp = "c:\autoexec.bat"
  2484.    Tmp2 = "c:\tmp\autoexec.bat"
  2485.    Tmp1 = Tmp1 & "Compare file attribute " & Tmp & " with " & Tmp2 & " is " & cCmpFileAttribute(Tmp, Tmp2) & Chr$(13)
  2486.    Tmp1 = Tmp1 & "Compare file size " & Tmp & " with " & Tmp2 & " is " & cCmpFileSize(Tmp, Tmp2) & Chr$(13)
  2487.    Tmp1 = Tmp1 & "Compare file time " & Tmp & " with " & Tmp2 & " is " & cCmpFileTime(Tmp, Tmp2) & Chr$(13)
  2488.    Tmp1 = Tmp1 & "Compare file contents (case sensitive) " & Tmp & " with " & Tmp2 & " is " & cCmpFileContents(Tmp, Tmp2, True) & Chr$(13)
  2489.    Tmp1 = Tmp1 & "Compare file contents (not sensitive) " & Tmp & " with " & Tmp2 & " is " & cCmpFileContents(Tmp, Tmp2, False) & Chr$(13) & Chr$(13)
  2490.    cStartBasisTimer
  2491.    For i = 1 To Item
  2492.       j = cCmpFileSize(Tmp, Tmp2)
  2493.    Next i
  2494.    Tmp1 = Tmp1 & "file size speed for " & Item & " = " & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  2495.    cStartBasisTimer
  2496.    For i = 1 To Item
  2497.       j = cCmpFileContents(Tmp, Tmp2, True)
  2498.    Next i
  2499.    Tmp1 = Tmp1 & "file contents (cs) speed for " & Item & " = " & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  2500.    cStartBasisTimer
  2501.    For i = 1 To Item
  2502.       j = cCmpFileContents(Tmp, Tmp2, False)
  2503.    Next i
  2504.    Tmp1 = Tmp1 & "file contents (ns) speed for " & Item & " = " & cReadBasisTimer() & " ms"
  2505.    Label3.Caption = Tmp1
  2506. End Sub
  2507. Private Sub TestFileCompress()
  2508.    Dim Title      As String
  2509.    Dim Tmp        As String
  2510.    Dim Tmp1       As String
  2511.    Dim Tmp2       As String
  2512.    Dim Tmp3       As String
  2513.    Dim i          As Integer
  2514.    Dim j          As Long
  2515.    Tmp1 = ""
  2516.    Tmp = "c:\autoexec.bat"
  2517.    Tmp2 = "c:\autoexec.tb1"
  2518.    Tmp3 = "c:\autoexec.tb2"
  2519.    Tmp1 = Tmp1 & "File Compress '" & Tmp & "' to '" & Tmp2 & "' is " & cFileCompress(Tmp, Tmp2) & Chr$(13)
  2520.    Tmp1 = Tmp1 & "File Expand '" & Tmp2 & "' to '" & Tmp3 & "' is " & cFileExpand(Tmp2, Tmp3) & Chr$(13)
  2521.    Tmp1 = Tmp1 & "Compare file contents (not sensitive) '" & Tmp & "' with '" & Tmp3 & "' is " & IIf(cCmpFileContents(Tmp, Tmp3, False) = -1, "same", "not same") & Chr$(13) & Chr$(13)
  2522.    cStartBasisTimer
  2523.    For i = 1 To Item
  2524.       j = cFileCompress(Tmp, Tmp2)
  2525.    Next i
  2526.    j = cFileExpand(Tmp2, Tmp3)
  2527.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  2528.    Label3.Caption = Tmp1
  2529. End Sub
  2530. Private Sub TestFileCompressTab()
  2531.    Dim Title      As String
  2532.    Dim Tmp        As String
  2533.    Dim Tmp1       As String
  2534.    Dim Tmp2       As String
  2535.    Dim Tmp3       As String
  2536.    Dim i          As Integer
  2537.    Dim j          As Long
  2538.    Tmp1 = ""
  2539.    Tmp = "c:\autoexec.bat"
  2540.    Tmp2 = "c:\autoexec.tb1"
  2541.    Tmp3 = "c:\autoexec.tb2"
  2542.    For i = 1 To 4
  2543.       Tmp1 = Tmp1 & "File CompressTab (" & i & " spaces = 1 tab) " & Tmp & " to " & Tmp2 & " is " & cFileCompressTab(Tmp, Tmp2, i) & Chr$(13)
  2544.       Tmp1 = Tmp1 & "File ExpandTab (" & i & " spaces = 1 tab) " & Tmp2 & " to " & Tmp3 & " is " & cFileExpandTab(Tmp2, Tmp3, i) & Chr$(13)
  2545.       Tmp1 = Tmp1 & "Compare file contents (not sensitive) '" & Tmp & "' with '" & Tmp3 & "' is " & IIf(cCmpFileContents(Tmp, Tmp3, False) = -1, "same", "not same") & Chr$(13) & Chr$(13)
  2546.    Next i
  2547.    cStartBasisTimer
  2548.    For i = 1 To Item
  2549.       j = cFileCompressTab(Tmp, Tmp2, 3)
  2550.    Next i
  2551.    j = cFileExpandTab(Tmp2, Tmp3, 3)
  2552.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  2553.    Label3.Caption = Tmp1
  2554. End Sub
  2555. Private Sub TestFileCopy()
  2556.    Dim Title      As String
  2557.    Dim Tmp        As String
  2558.    Dim Tmp1       As String
  2559.    Dim Tmp2       As String
  2560.    Dim i          As Integer
  2561.    Dim j          As Long
  2562.    Tmp1 = ""
  2563.    Tmp = "c:\autoexec.bat"
  2564.    Tmp2 = "c:\autoexec.tab"
  2565.    Tmp1 = Tmp1 & "File Copy " & Tmp & " to " & Tmp2 & " is " & cFileCopy(Tmp, Tmp2) & Chr$(13) & Chr$(13)
  2566.    cStartBasisTimer
  2567.    For i = 1 To Item
  2568.       j = cFileCopy(Tmp, Tmp2)
  2569.    Next i
  2570.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  2571.    Label3.Caption = Tmp1
  2572. End Sub
  2573. Private Sub TestFileCRC32()
  2574.    Dim Title      As String
  2575.    Dim Tmp        As String
  2576.    Dim Tmp1       As String
  2577.    Dim Tmp2       As String
  2578.    Dim i          As Integer
  2579.    Dim j          As Integer
  2580.    Dim k          As Long
  2581.    Tmp = "c:\config.sys"
  2582.    Title = "CRC32 for file '" & Tmp & "' is "
  2583.    Tmp1 = Tmp1 & Title & Hex$(cFileCRC32(Tmp, OPEN_MODE_BINARY)) & Chr$(13) & Chr$(13)
  2584.    Tmp = "c:\autoexec.bat"
  2585.    Title = "CRC32 for file '" & Tmp & "' is "
  2586.    Tmp1 = Tmp1 & Title & Hex$(cFileCRC32(Tmp, OPEN_MODE_BINARY)) & Chr$(13) & Chr$(13)
  2587.    Tmp = "c:\command.com"
  2588.    Title = "CRC32 for file '" & Tmp & "' is "
  2589.    Tmp1 = Tmp1 & Title & Hex$(cFileCRC32(Tmp, OPEN_MODE_BINARY)) & Chr$(13) & Chr$(13)
  2590.    cStartBasisTimer
  2591.    For i = 1 To ItemFile
  2592.       k = cFileCRC32(Tmp, OPEN_MODE_BINARY)
  2593.    Next i
  2594.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  2595.    Label3.Caption = Tmp1
  2596. End Sub
  2597. Private Sub TestFileEncrypt()
  2598.    Dim Title      As String
  2599.    Dim Tmp        As String
  2600.    Dim Tmp1       As String
  2601.    Dim Tmp2       As String
  2602.    Dim Tmp3       As String
  2603.    Dim Tmp4       As String
  2604.    Dim i          As Integer
  2605.    Dim j          As Long
  2606.    Tmp1 = ""
  2607.    Tmp = "c:\autoexec.bat"
  2608.    Tmp2 = "c:\ac.tb1"
  2609.    Tmp3 = "c:\ac.tb2"
  2610.    Tmp4 = cToHexa(Format$(76543210))
  2611.    For i = ENCRYPT_LEVEL_0 To ENCRYPT_LEVEL_4
  2612.       Tmp1 = Tmp1 & "Encrypt (level " & i & ") '" & Tmp & "' with '?' to '" & Tmp2 & "' is " & cFileEncrypt(Tmp, Tmp2, Tmp4, i) & Chr$(13)
  2613.       Tmp1 = Tmp1 & "Decrypt (level " & i & ") '" & Tmp2 & "' with '?' to '" & Tmp3 & "' is " & cFileDecrypt(Tmp2, Tmp3, Tmp4, i) & Chr$(13)
  2614.       Tmp1 = Tmp1 & "Compare (ns) '" & Tmp & "' with '" & Tmp3 & "' is " & IIf(cCmpFileContents(Tmp, Tmp3, False) = -1, "same", "not same") & Chr$(13) & Chr$(13)
  2615.    Next i
  2616.    cStartBasisTimer
  2617.    For i = 1 To Item
  2618.       j = cFileEncrypt(Tmp, Tmp2, Tmp4, ENCRYPT_LEVEL_3)
  2619.    Next i
  2620.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  2621.    Label3.Caption = Tmp1
  2622. End Sub
  2623. Private Sub TestFileFilter()
  2624.    Dim Title      As String
  2625.    Dim Tmp        As String
  2626.    Dim Tmp1       As String
  2627.    Dim Tmp2       As String
  2628.    Dim Tmp3       As String
  2629.    Dim i          As Integer
  2630.    Dim j          As Long
  2631.    Tmp1 = ""
  2632.    Tmp = "c:\autoexec.bat"
  2633.    Tmp2 = "c:\autoexec.tab"
  2634.    Tmp3 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
  2635.    Tmp3 = Tmp3 + LCase$(Tmp)
  2636.    Tmp1 = Tmp1 & "File Filter (A-Z, a-z) " & Tmp & " to " & Tmp2 & " is " & cFileFilter(Tmp, Tmp2, Tmp3) & Chr$(13) & Chr$(13)
  2637.    cStartBasisTimer
  2638.    For i = 1 To Item
  2639.       j = cFileFilter(Tmp, Tmp2, Tmp3)
  2640.    Next i
  2641.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  2642.    Label3.Caption = Tmp1
  2643. End Sub
  2644. Private Sub TestFileFilterNot()
  2645.    Dim Title      As String
  2646.    Dim Tmp        As String
  2647.    Dim Tmp1       As String
  2648.    Dim Tmp2       As String
  2649.    Dim Tmp3       As String
  2650.    Dim i          As Integer
  2651.    Dim j          As Long
  2652.    Tmp1 = ""
  2653.    Tmp = "c:\autoexec.bat"
  2654.    Tmp2 = "c:\autoexec.tab"
  2655.    Tmp3 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
  2656.    Tmp3 = Tmp3 + LCase$(Tmp) + " =" + Chr$(13) + Chr$(10)
  2657.    Tmp1 = Tmp1 & "File Filter Not in (A-Z, a-z, CR, LF, SPACE, =) " & Tmp & " to " & Tmp2 & " is " & cFileFilterNot(Tmp, Tmp2, Tmp3) & Chr$(13) & Chr$(13)
  2658.    cStartBasisTimer
  2659.    For i = 1 To Item
  2660.       j = cFileFilterNot(Tmp, Tmp2, Tmp3)
  2661.    Next i
  2662.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  2663.    Label3.Caption = Tmp1
  2664. End Sub
  2665. Private Sub TestFileGetAttrib()
  2666.    Dim Title      As String
  2667.    Dim Tmp        As String
  2668.    Dim Tmp1       As String
  2669.    Dim Tmp2       As String
  2670.    Dim i          As Integer
  2671.    Dim j          As Integer
  2672.    Dim FileAttrib As FileAttributeType
  2673.    Tmp1 = ""
  2674.    Tmp = cFilesInDirectory("*.*", True)
  2675.    j = cFileGetAttrib(Tmp, FileAttrib)
  2676.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Archive, " is Archive", " is not Archive") & Chr$(13)
  2677.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Hidden, " is Hidden", " is not Hidden") & Chr$(13)
  2678.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.ReadOnly, " is ReadOnly", " is not ReadOnly") & Chr$(13)
  2679.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.SubDir, " is SubDir", " is not SubDir") & Chr$(13)
  2680.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.System, " is System", " is not System") & Chr$(13) & Chr$(13)
  2681.    Tmp = cSubDirectory("*.*", True)
  2682.    Tmp = cSubDirectory("*.*", False)
  2683.    Tmp = cSubDirectory("*.*", False)
  2684.    j = cFileGetAttrib(Tmp, FileAttrib)
  2685.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Archive, " is Archive", " is not Archive") & Chr$(13)
  2686.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Hidden, " is Hidden", " is not Hidden") & Chr$(13)
  2687.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.ReadOnly, " is ReadOnly", " is not ReadOnly") & Chr$(13)
  2688.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.SubDir, " is SubDir", " is not SubDir") & Chr$(13)
  2689.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.System, " is System", " is not System") & Chr$(13) & Chr$(13)
  2690.    cStartBasisTimer
  2691.    For i = 1 To Item
  2692.       j = cFileGetAttrib(Tmp, FileAttrib)
  2693.    Next i
  2694.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  2695.    Label3.Caption = Tmp1
  2696. End Sub
  2697. Private Sub TestFileLineCount()
  2698.    Dim Title      As String
  2699.    Dim Tmp        As String
  2700.    Dim Tmp1       As String
  2701.    Dim Tmp2       As String
  2702.    Dim Tmp3       As String
  2703.    Dim i          As Integer
  2704.    Dim j          As Long
  2705.    Tmp1 = ""
  2706.    Tmp = "C:\AUTOEXEC.BAT"
  2707.    Tmp1 = Tmp1 & "Total lines in '" & Tmp & "' are " & cFileLineCount(Tmp) & Chr$(13) & Chr$(13)
  2708.    Tmp = "C:\CONFIG.SYS"
  2709.    Tmp1 = Tmp1 & "Total lines in '" & Tmp & "' are " & cFileLineCount(Tmp) & Chr$(13) & Chr$(13)
  2710.    cStartBasisTimer
  2711.    For i = 1 To Item
  2712.       j = cFileLineCount(Tmp)
  2713.    Next i
  2714.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  2715.    Label3.Caption = Tmp1
  2716. End Sub
  2717. Private Sub TestFileMerge()
  2718.    Dim Title      As String
  2719.    Dim Tmp        As String
  2720.    Dim Tmp1       As String
  2721.    Dim Tmp2       As String
  2722.    Dim Tmp3       As String
  2723.    Dim i          As Integer
  2724.    Dim j          As Long
  2725.    Tmp1 = ""
  2726.    Tmp = "c:\autoexec.bat"
  2727.    Tmp2 = "c:\config.sys"
  2728.    Tmp3 = "c:\merge.byt"
  2729.    Tmp1 = Tmp1 & "File Merge '" & Tmp & "' and '" & Tmp2 & "' to '" & Tmp3 & "' is " & cFileMerge(Tmp, Tmp2, Tmp3) & Chr$(13) & Chr$(13)
  2730.    cStartBasisTimer
  2731.    For i = 1 To Item
  2732.       j = cFileMerge(Tmp, Tmp2, Tmp3)
  2733.    Next i
  2734.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  2735.    Label3.Caption = Tmp1
  2736. End Sub
  2737. Private Sub TestFilePathExists()
  2738.    Dim Title      As String
  2739.    Dim Tmp        As String
  2740.    Dim Tmp1       As String
  2741.    Dim Tmp2       As String
  2742.    Dim i          As Integer
  2743.    Dim j          As Integer
  2744.    Tmp1 = "File t2win-16.dll " & IIf(cFilePathExists("t2win-16.dll") = True, "found", "not found") & Chr$(13) & Chr$(13)
  2745.    Tmp1 = Tmp1 & "Path \windows " & IIf(cFilePathExists("\windows") = True, "found", "not found") & Chr$(13) & Chr$(13)
  2746.    Tmp1 = Tmp1 & "Path \windows\wintime " & IIf(cFilePathExists("\windows\wintime") = True, "found", "not found") & Chr$(13) & Chr$(13)
  2747.    cStartBasisTimer
  2748.    For i = 1 To Item
  2749.       j = cFilePathExists("t2win-16.dll")
  2750.    Next i
  2751.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  2752.    Label3.Caption = Tmp1
  2753. End Sub
  2754. Private Sub TestFileResetAllAttrib()
  2755.    Dim Title      As String
  2756.    Dim Tmp        As String
  2757.    Dim Tmp1       As String
  2758.    Dim Tmp2       As String
  2759.    Dim i          As Integer
  2760.    Dim j          As Integer
  2761.    Dim FileAttrib As FileAttributeType
  2762.    Tmp1 = ""
  2763.    Tmp = "TEST.DAT"
  2764.    Call CreateFile
  2765.    FileAttrib.Archive = False
  2766.    FileAttrib.Hidden = True
  2767.    FileAttrib.ReadOnly = True
  2768.    FileAttrib.System = True
  2769.    j = cFileResetAllAttrib(Tmp)
  2770.    j = cFileGetAttrib(Tmp, FileAttrib)
  2771.    Tmp1 = "File " & Tmp & " has been reset with" & Chr$(13)
  2772.    Tmp1 = Tmp1 & " flag archive" & Chr$(13)
  2773.    Tmp1 = Tmp1 & " flag hidden" & Chr$(13)
  2774.    Tmp1 = Tmp1 & " flag read-only" & Chr$(13)
  2775.    Tmp1 = Tmp1 & " flag system" & Chr$(13) & Chr$(13)
  2776.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Archive, " is Archive", " is not Archive") & Chr$(13)
  2777.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Hidden, " is Hidden", " is not Hidden") & Chr$(13)
  2778.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.ReadOnly, " is ReadOnly", " is not ReadOnly") & Chr$(13)
  2779.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.System, " is System", " is not System") & Chr$(13) & Chr$(13)
  2780.    cStartBasisTimer
  2781.    For i = 1 To ItemFile
  2782.       j = cFileResetAllAttrib(Tmp)
  2783.    Next i
  2784.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  2785.    Label3.Caption = Tmp1
  2786. End Sub
  2787. Private Sub TestFileResetArchive()
  2788.    Dim Title      As String
  2789.    Dim Tmp        As String
  2790.    Dim Tmp1       As String
  2791.    Dim Tmp2       As String
  2792.    Dim i          As Integer
  2793.    Dim j          As Integer
  2794.    Dim nArchive   As Integer
  2795.    Dim nHidden    As Integer
  2796.    Dim nReadOnly  As Integer
  2797.    Dim nSubDir    As Integer
  2798.    Dim nSystem    As Integer
  2799.    Dim FileAttrib As FileAttributeType
  2800.    Tmp1 = ""
  2801.    Tmp = "TEST.DAT"
  2802.    Call CreateFile
  2803.    j = cFileSetAllAttrib(Tmp)
  2804.    j = cFileResetArchive(Tmp)
  2805.    j = cFileGetAttrib(Tmp, FileAttrib)
  2806.    Tmp1 = "File " & Tmp & " has been reset with" & Chr$(13)
  2807.    Tmp1 = Tmp1 & " flag archive" & Chr$(13) & Chr$(13)
  2808.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Archive, " is Archive", " is not Archive") & Chr$(13)
  2809.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Hidden, " is Hidden", " is not Hidden") & Chr$(13)
  2810.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.ReadOnly, " is ReadOnly", " is not ReadOnly") & Chr$(13)
  2811.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.System, " is System", " is not System") & Chr$(13) & Chr$(13)
  2812.    cStartBasisTimer
  2813.    For i = 1 To ItemFile
  2814.       j = cFileResetArchive(Tmp)
  2815.    Next i
  2816.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  2817.    Label3.Caption = Tmp1
  2818. End Sub
  2819. Private Sub TestFileResetHidden()
  2820.    Dim Title      As String
  2821.    Dim Tmp        As String
  2822.    Dim Tmp1       As String
  2823.    Dim Tmp2       As String
  2824.    Dim i          As Integer
  2825.    Dim j          As Integer
  2826.    Dim nArchive   As Integer
  2827.    Dim nHidden    As Integer
  2828.    Dim nReadOnly  As Integer
  2829.    Dim nSubDir    As Integer
  2830.    Dim nSystem    As Integer
  2831.    Dim FileAttrib As FileAttributeType
  2832.    Tmp1 = ""
  2833.    Tmp = "TEST.DAT"
  2834.    Call CreateFile
  2835.    j = cFileSetAllAttrib(Tmp)
  2836.    j = cFileResetHidden(Tmp)
  2837.    j = cFileGetAttrib(Tmp, FileAttrib)
  2838.    Tmp1 = "File " & Tmp & " has been reset with" & Chr$(13)
  2839.    Tmp1 = Tmp1 & " flag hidden" & Chr$(13) & Chr$(13)
  2840.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Archive, " is Archive", " is not Archive") & Chr$(13)
  2841.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Hidden, " is Hidden", " is not Hidden") & Chr$(13)
  2842.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.ReadOnly, " is ReadOnly", " is not ReadOnly") & Chr$(13)
  2843.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.System, " is System", " is not System") & Chr$(13) & Chr$(13)
  2844.    cStartBasisTimer
  2845.    For i = 1 To ItemFile
  2846.       j = cFileResetHidden(Tmp)
  2847.    Next i
  2848.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  2849.    Label3.Caption = Tmp1
  2850. End Sub
  2851. Private Sub TestFileResetReadOnly()
  2852.    Dim Title      As String
  2853.    Dim Tmp        As String
  2854.    Dim Tmp1       As String
  2855.    Dim Tmp2       As String
  2856.    Dim i          As Integer
  2857.    Dim j          As Integer
  2858.    Dim FileAttrib As FileAttributeType
  2859.    Dim nArchive   As Integer
  2860.    Dim nHidden    As Integer
  2861.    Dim nReadOnly  As Integer
  2862.    Dim nSubDir    As Integer
  2863.    Dim nSystem    As Integer
  2864.    Tmp1 = ""
  2865.    Tmp = "TEST.DAT"
  2866.    Call CreateFile
  2867.    j = cFileSetAllAttrib(Tmp)
  2868.    j = cFileResetReadOnly(Tmp)
  2869.    j = cFileGetAttrib(Tmp, FileAttrib)
  2870.    Tmp1 = "File " & Tmp & " has been reset with" & Chr$(13)
  2871.    Tmp1 = Tmp1 & " flag read-only" & Chr$(13) & Chr$(13)
  2872.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Archive, " is Archive", " is not Archive") & Chr$(13)
  2873.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Hidden, " is Hidden", " is not Hidden") & Chr$(13)
  2874.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.ReadOnly, " is ReadOnly", " is not ReadOnly") & Chr$(13)
  2875.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.System, " is System", " is not System") & Chr$(13) & Chr$(13)
  2876.    cStartBasisTimer
  2877.    For i = 1 To ItemFile
  2878.       j = cFileResetReadOnly(Tmp)
  2879.    Next i
  2880.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  2881.    Label3.Caption = Tmp1
  2882. End Sub
  2883. Private Sub TestFileResetSystem()
  2884.    Dim Title      As String
  2885.    Dim Tmp        As String
  2886.    Dim Tmp1       As String
  2887.    Dim Tmp2       As String
  2888.    Dim i          As Integer
  2889.    Dim j          As Integer
  2890.    Dim FileAttrib As FileAttributeType
  2891.    Tmp1 = ""
  2892.    Tmp = "TEST.DAT"
  2893.    Call CreateFile
  2894.    j = cFileSetAllAttrib(Tmp)
  2895.    j = cFileResetSystem(Tmp)
  2896.    j = cFileGetAttrib(Tmp, FileAttrib)
  2897.    Tmp1 = "File " & Tmp & " has been reset with" & Chr$(13)
  2898.    Tmp1 = Tmp1 & " flag system" & Chr$(13) & Chr$(13)
  2899.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Archive, " is Archive", " is not Archive") & Chr$(13)
  2900.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Hidden, " is Hidden", " is not Hidden") & Chr$(13)
  2901.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.ReadOnly, " is ReadOnly", " is not ReadOnly") & Chr$(13)
  2902.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.System, " is System", " is not System") & Chr$(13) & Chr$(13)
  2903.    cStartBasisTimer
  2904.    For i = 1 To ItemFile
  2905.       j = cFileResetSystem(Tmp)
  2906.    Next i
  2907.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  2908.    Label3.Caption = Tmp1
  2909. End Sub
  2910. Private Sub TestFileS()
  2911.    Dim Title      As String
  2912.    Dim Tmp        As String
  2913.    Dim Tmp1       As String
  2914.    Dim Tmp2       As String
  2915.    Dim Tmp3       As String
  2916.    Dim Tmp4       As String
  2917.    Dim i          As Integer
  2918.    Dim j          As Long
  2919.    Tmp1 = ""
  2920.    Tmp = "c:\autoexec.bat"
  2921.    Tmp3 = "re"
  2922.    Tmp4 = "SET"
  2923.    Tmp1 = Tmp1 & "File Search (insensitive) : '" & Tmp3 & "' in '" & Tmp & "' is " & cFileSearch(Tmp, Tmp3, False) & Chr$(13) & Chr$(13)
  2924.    Tmp1 = Tmp1 & "File Search and Count (insensitive) : '" & Tmp3 & "' in '" & Tmp & "' is " & cFileSearchCount(Tmp, Tmp3, False) & Chr$(13) & Chr$(13)
  2925.    Tmp1 = Tmp1 & "File Search (insensitive) : '" & Tmp4 & "' in '" & Tmp & "' is " & cFileSearch(Tmp, Tmp4, False) & Chr$(13) & Chr$(13)
  2926.    Tmp1 = Tmp1 & "File Search and Count (insensitive) : '" & Tmp4 & "' in '" & Tmp & "' is " & cFileSearchCount(Tmp, Tmp4, False) & Chr$(13) & Chr$(13)
  2927.    Tmp1 = Tmp1 & "File Search (sensitive) : '" & Tmp3 & "' in '" & Tmp & "' is " & cFileSearch(Tmp, Tmp3, True) & Chr$(13) & Chr$(13)
  2928.    Tmp1 = Tmp1 & "File Search and Count (sensitive) : '" & Tmp3 & "' in '" & Tmp & "' is " & cFileSearchCount(Tmp, Tmp3, True) & Chr$(13) & Chr$(13)
  2929.    Tmp1 = Tmp1 & "File Search (sensitive) : '" & Tmp4 & "' in '" & Tmp & "' is " & cFileSearch(Tmp, Tmp4, True) & Chr$(13) & Chr$(13)
  2930.    Tmp1 = Tmp1 & "File Search and Count (sensitive) : '" & Tmp4 & "' in '" & Tmp & "' is " & cFileSearchCount(Tmp, Tmp4, True) & Chr$(13) & Chr$(13)
  2931.    cStartBasisTimer
  2932.    For i = 1 To Item
  2933.       If ((i Mod 2) = 1) Then
  2934.          j = cFileSearch(Tmp, Tmp3, False)
  2935.       Else
  2936.          j = cFileSearchCount(Tmp, Tmp3, False)
  2937.       End If
  2938.    Next i
  2939.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  2940.    Label3.Caption = Tmp1
  2941. End Sub
  2942. Private Sub TestFileSetAllAttrib()
  2943.    Dim Title      As String
  2944.    Dim Tmp        As String
  2945.    Dim Tmp1       As String
  2946.    Dim Tmp2       As String
  2947.    Dim i          As Integer
  2948.    Dim j          As Integer
  2949.    Dim FileAttrib As FileAttributeType
  2950.    Tmp1 = ""
  2951.    Tmp = "TEST.DAT"
  2952.    Call CreateFile
  2953.    j = cFileSetAllAttrib(Tmp)
  2954.    j = cFileGetAttrib(Tmp, FileAttrib)
  2955.    Tmp1 = "File " & Tmp & " has been set with" & Chr$(13)
  2956.    Tmp1 = Tmp1 & " flag archive" & Chr$(13)
  2957.    Tmp1 = Tmp1 & " flag hidden" & Chr$(13)
  2958.    Tmp1 = Tmp1 & " flag read-only" & Chr$(13)
  2959.    Tmp1 = Tmp1 & " flag system" & Chr$(13) & Chr$(13)
  2960.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Archive, " is Archive", " is not Archive") & Chr$(13)
  2961.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Hidden, " is Hidden", " is not Hidden") & Chr$(13)
  2962.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.ReadOnly, " is ReadOnly", " is not ReadOnly") & Chr$(13)
  2963.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.System, " is System", " is not System") & Chr$(13) & Chr$(13)
  2964.    cStartBasisTimer
  2965.    For i = 1 To ItemFile
  2966.       j = cFileSetAllAttrib(Tmp)
  2967.    Next i
  2968.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  2969.    Label3.Caption = Tmp1
  2970. End Sub
  2971. Private Sub TestFileSetArchive()
  2972.    Dim Title      As String
  2973.    Dim Tmp        As String
  2974.    Dim Tmp1       As String
  2975.    Dim Tmp2       As String
  2976.    Dim i          As Integer
  2977.    Dim j          As Integer
  2978.    Dim FileAttrib As FileAttributeType
  2979.    Tmp1 = ""
  2980.    Tmp = "TEST.DAT"
  2981.    Call CreateFile
  2982.    j = cFileSetArchive(Tmp)
  2983.    j = cFileGetAttrib(Tmp, FileAttrib)
  2984.    Tmp1 = "File " & Tmp & " has been set with" & Chr$(13)
  2985.    Tmp1 = Tmp1 & " flag archive" & Chr$(13) & Chr$(13)
  2986.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Archive, " is Archive", " is not Archive") & Chr$(13)
  2987.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Hidden, " is Hidden", " is not Hidden") & Chr$(13)
  2988.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.ReadOnly, " is ReadOnly", " is not ReadOnly") & Chr$(13)
  2989.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.System, " is System", " is not System") & Chr$(13) & Chr$(13)
  2990.    cStartBasisTimer
  2991.    For i = 1 To ItemFile
  2992.       j = cFileSetArchive(Tmp)
  2993.    Next i
  2994.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  2995.    Label3.Caption = Tmp1
  2996. End Sub
  2997. Private Sub TestFileSetAttrib()
  2998.    Dim Title      As String
  2999.    Dim Tmp        As String
  3000.    Dim Tmp1       As String
  3001.    Dim Tmp2       As String
  3002.    Dim i          As Integer
  3003.    Dim j          As Integer
  3004.    Dim FileAttrib As FileAttributeType
  3005.    Tmp1 = ""
  3006.    Tmp = "TEST.DAT"
  3007.    Call CreateFile
  3008.    FileAttrib.Archive = False
  3009.    FileAttrib.Hidden = True
  3010.    FileAttrib.ReadOnly = True
  3011.    FileAttrib.System = True
  3012.    j = cFileSetAttrib(Tmp, FileAttrib)
  3013.    j = cFileGetAttrib(Tmp, FileAttrib)
  3014.    Tmp1 = "File " & Tmp & " has been set with" & Chr$(13)
  3015.    Tmp1 = Tmp1 & " flag hidden" & Chr$(13)
  3016.    Tmp1 = Tmp1 & " flag read-only" & Chr$(13)
  3017.    Tmp1 = Tmp1 & " flag system" & Chr$(13) & Chr$(13)
  3018.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Archive, " is Archive", " is not Archive") & Chr$(13)
  3019.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Hidden, " is Hidden", " is not Hidden") & Chr$(13)
  3020.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.ReadOnly, " is ReadOnly", " is not ReadOnly") & Chr$(13)
  3021.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.System, " is System", " is not System") & Chr$(13) & Chr$(13)
  3022.    cStartBasisTimer
  3023.    For i = 1 To ItemFile
  3024.       j = cFileSetAttrib(Tmp, FileAttrib)
  3025.    Next i
  3026.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  3027.    Label3.Caption = Tmp1
  3028. End Sub
  3029. Private Sub TestFileSetHidden()
  3030.    Dim Title      As String
  3031.    Dim Tmp        As String
  3032.    Dim Tmp1       As String
  3033.    Dim Tmp2       As String
  3034.    Dim i          As Integer
  3035.    Dim j          As Integer
  3036.    Dim FileAttrib As FileAttributeType
  3037.    Tmp1 = ""
  3038.    Tmp = "TEST.DAT"
  3039.    Call CreateFile
  3040.    j = cFileSetHidden(Tmp)
  3041.    j = cFileGetAttrib(Tmp, FileAttrib)
  3042.    Tmp1 = "File " & Tmp & " has been set with" & Chr$(13)
  3043.    Tmp1 = Tmp1 & " flag hidden" & Chr$(13) & Chr$(13)
  3044.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Archive, " is Archive", " is not Archive") & Chr$(13)
  3045.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Hidden, " is Hidden", " is not Hidden") & Chr$(13)
  3046.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.ReadOnly, " is ReadOnly", " is not ReadOnly") & Chr$(13)
  3047.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.System, " is System", " is not System") & Chr$(13) & Chr$(13)
  3048.    cStartBasisTimer
  3049.    For i = 1 To ItemFile
  3050.       j = cFileSetHidden(Tmp)
  3051.    Next i
  3052.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  3053.    Label3.Caption = Tmp1
  3054. End Sub
  3055. Private Sub TestFileSetReadOnly()
  3056.    Dim Title      As String
  3057.    Dim Tmp        As String
  3058.    Dim Tmp1       As String
  3059.    Dim Tmp2       As String
  3060.    Dim i          As Integer
  3061.    Dim j          As Integer
  3062.    Dim FileAttrib As FileAttributeType
  3063.    Tmp1 = ""
  3064.    Tmp = "TEST.DAT"
  3065.    Call CreateFile
  3066.    j = cFileSetReadOnly(Tmp)
  3067.    j = cFileGetAttrib(Tmp, FileAttrib)
  3068.    Tmp1 = "File " & Tmp & " has been set with" & Chr$(13)
  3069.    Tmp1 = Tmp1 & " flag read-only" & Chr$(13) & Chr$(13)
  3070.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Archive, " is Archive", " is not Archive") & Chr$(13)
  3071.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Hidden, " is Hidden", " is not Hidden") & Chr$(13)
  3072.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.ReadOnly, " is ReadOnly", " is not ReadOnly") & Chr$(13)
  3073.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.System, " is System", " is not System") & Chr$(13) & Chr$(13)
  3074.    cStartBasisTimer
  3075.    For i = 1 To ItemFile
  3076.       j = cFileSetReadOnly(Tmp)
  3077.    Next i
  3078.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  3079.    Label3.Caption = Tmp1
  3080. End Sub
  3081. Private Sub TestFileSetSystem()
  3082.    Dim Title      As String
  3083.    Dim Tmp        As String
  3084.    Dim Tmp1       As String
  3085.    Dim Tmp2       As String
  3086.    Dim i          As Integer
  3087.    Dim j          As Integer
  3088.    Dim FileAttrib As FileAttributeType
  3089.    Tmp1 = ""
  3090.    Tmp = "TEST.DAT"
  3091.    Call CreateFile
  3092.    j = cFileSetSystem(Tmp)
  3093.    j = cFileGetAttrib(Tmp, FileAttrib)
  3094.    Tmp1 = "File " & Tmp & " has been set with" & Chr$(13)
  3095.    Tmp1 = Tmp1 & " flag system" & Chr$(13) & Chr$(13)
  3096.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Archive, " is Archive", " is not Archive") & Chr$(13)
  3097.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.Hidden, " is Hidden", " is not Hidden") & Chr$(13)
  3098.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.ReadOnly, " is ReadOnly", " is not ReadOnly") & Chr$(13)
  3099.    Tmp1 = Tmp1 & "File " & Tmp & IIf(FileAttrib.System, " is System", " is not System") & Chr$(13) & Chr$(13)
  3100.    cStartBasisTimer
  3101.    For i = 1 To ItemFile
  3102.       j = cFileSetSystem(Tmp)
  3103.    Next i
  3104.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  3105.    Label3.Caption = Tmp1
  3106. End Sub
  3107. Private Sub TestFilesInDirectory()
  3108.    Dim Title      As String
  3109.    Dim Tmp        As String
  3110.    Dim Tmp1       As String
  3111.    Dim Tmp2       As String
  3112.    Dim i          As Integer
  3113.    Dim j          As Integer
  3114.    Dim k          As Long
  3115.    Title = "The 10 first files in this directory are" & Chr$(13) & Chr$(13)
  3116.    Tmp1 = Title
  3117.    Tmp2 = cFilesInDirectory("*.*", True)
  3118.    For i = 1 To 10
  3119.       Tmp1 = Tmp1 & Tmp2 & Chr$(13)
  3120.       Tmp2 = cFilesInDirectory("*.*", False)
  3121.    Next i
  3122.    Tmp1 = Tmp1 & Chr$(13)
  3123.    cStartBasisTimer
  3124.    For i = 1 To Item
  3125.       Tmp = cFilesInDirectory("*.*", True)
  3126.    Next i
  3127.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  3128.    Label3.Caption = Tmp1
  3129. End Sub
  3130. Private Sub TestFilesInDirOnDisk()
  3131.    Dim Title      As String
  3132.    Dim Tmp        As String
  3133.    Dim Tmp1       As String
  3134.    Dim Tmp2       As String
  3135.    Dim i          As Integer
  3136.    Dim j          As Integer
  3137.    Dim k          As Long
  3138.    j = cFilesInDirOnDisk("c:\test.tmp", "c:\*.*", A_ALL)
  3139.    Tmp1 = "The files (any attributes) in 'C:\' are (" & j & ") see first list" & Chr$(13) & Chr$(13)
  3140.    j = cFileToListBox(List1.hWnd, "c:\test.tmp")
  3141.    j = cFilesInDirOnDisk("c:\test1.tmp", "c:\*.*", -A_ARCH)
  3142.    Tmp1 = Tmp1 & "The files (only archive, not other attribute) in 'C:\' are (" & j & ") see second list" & Chr$(13) & Chr$(13)
  3143.    j = cFileToListBox(List2.hWnd, "c:\test1.tmp")
  3144.    Tmp1 = Tmp1 & "Number of files (with at least one of the following attribute)" & Chr$(13) & Chr$(13)
  3145.    Tmp1 = Tmp1 & "Any : " & cFilesInDirOnDisk("c:\test.tmp", "c:\*.*", A_ALL) & Chr$(13)
  3146.    Tmp1 = Tmp1 & "(N)ormal : " & cFilesInDirOnDisk("c:\test.tmp", "c:\*.*", A_NORMAL) & Chr$(13)
  3147.    Tmp1 = Tmp1 & "(A)rchive, (N)ormal : " & cFilesInDirOnDisk("c:\test.tmp", "c:\*.*", A_NORMAL_ARCHIVE) & Chr$(13)
  3148.    Tmp1 = Tmp1 & "(A)rchive : " & cFilesInDirOnDisk("c:\test.tmp", "c:\*.*", A_ARCH) & Chr$(13)
  3149.    Tmp1 = Tmp1 & "(A)rchive, (R)ead-Only : " & cFilesInDirOnDisk("c:\test.tmp", "c:\*.*", A_ARCH Or A_RDONLY) & Chr$(13)
  3150.    Tmp1 = Tmp1 & "(S)ystem, (H)idden, (R)ead-Only : " & cFilesInDirOnDisk("c:\test.tmp", "c:\*.*", A_SYSTEM Or A_HIDDEN Or A_RDONLY) & Chr$(13)
  3151.    Tmp1 = Tmp1 & "(H)idden, (R)ead-Only : " & cFilesInDirOnDisk("c:\test.tmp", "c:\*.*", A_HIDDEN Or A_RDONLY) & Chr$(13)
  3152.    Tmp1 = Tmp1 & "(R)ead-Only : " & cFilesInDirOnDisk("c:\test.tmp", "c:\*.*", A_RDONLY) & Chr$(13)
  3153.    Tmp1 = Tmp1 & Chr$(13)
  3154.    Tmp1 = Tmp1 & "Number of files (with exact attribute excluding all others)" & Chr$(13) & Chr$(13)
  3155.    Tmp1 = Tmp1 & "(N)ormal : " & cFilesInDirOnDisk("c:\test.tmp", "c:\*.*", -(A_NORMAL)) & Chr$(13)
  3156.    Tmp1 = Tmp1 & "(A)rchive : " & cFilesInDirOnDisk("c:\test.tmp", "c:\*.*", -(A_ARCH)) & Chr$(13)
  3157.    Tmp1 = Tmp1 & "(A)rchive, (R)ead-Only : " & cFilesInDirOnDisk("c:\test.tmp", "c:\*.*", -(A_ARCH Or A_RDONLY)) & Chr$(13)
  3158.    Tmp1 = Tmp1 & "(S)ystem, (H)idden, (R)ead-Only : " & cFilesInDirOnDisk("c:\test.tmp", "c:\*.*", -(A_SYSTEM Or A_HIDDEN Or A_RDONLY)) & Chr$(13)
  3159.    Tmp1 = Tmp1 & "(H)idden, (R)ead-Only : " & cFilesInDirOnDisk("c:\test.tmp", "c:\*.*", -(A_HIDDEN Or A_RDONLY)) & Chr$(13)
  3160.    Tmp1 = Tmp1 & "(R)ead-Only : " & cFilesInDirOnDisk("c:\test.tmp", "c:\*.*", -(A_RDONLY)) & Chr$(13)
  3161.    Tmp1 = Tmp1 & Chr$(13)
  3162.    cStartBasisTimer
  3163.    For i = 1 To Item
  3164.       j = cFilesInDirOnDisk("c:\test.tmp", "c:\*.*", A_ALL)
  3165.    Next i
  3166.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  3167.    Label3.Caption = Tmp1
  3168. End Sub
  3169. Private Sub TestFilesInDirToArray()
  3170.    Dim Title      As String
  3171.    Dim Tmp        As String
  3172.    Dim Tmp1       As String
  3173.    Dim Tmp2       As String
  3174.    Dim i          As Long
  3175.    Dim r          As Integer
  3176.    Dim m1         As Integer
  3177.    Dim m2         As Integer
  3178.    m1 = -999
  3179.    m2 = 1000
  3180.    ReDim AD(m1 To m2) As String
  3181.    ' initialization because we use ReDim without Global definition
  3182.    'For i = m1 To m2
  3183.    '   AD(i) = Space$(256)
  3184.    'Next i
  3185.    r = cFilesInDirToArray("C:\*.*", A_ALL, AD())
  3186.    Tmp1 = "Reading directory 'C:\*.*' into AD(" & m1 & " To " & m2 & ") is '" & r & "'" & Chr$(13)
  3187.    Tmp1 = Tmp1 & "   The 3 (on " & r & ") first files in array are : " & Chr$(13) & Chr$(13)
  3188.    For i = 0 To 2
  3189.       Tmp1 = Tmp1 & AD(m1 + i) & Chr$(13)
  3190.    Next i
  3191.    Tmp1 = Tmp1 & Chr$(13)
  3192.    Tmp1 = Tmp1 & "   The 3 (on " & r & ") last files in array are : " & Chr$(13) & Chr$(13)
  3193.    For i = 0 To 2
  3194.       Tmp1 = Tmp1 & AD(m1 + r - 1 - 2 + i) & Chr$(13)
  3195.    Next i
  3196.    Tmp1 = Tmp1 & Chr$(13)
  3197.    r = cArrayToListBox(List1.hWnd, AD())
  3198.    Tmp2 = cGetDefaultCurrentDir()
  3199.    r = cFilesInDirToArray("*.*", A_ALL, AD())
  3200.    Tmp1 = Tmp1 & "Reading directory '" & Tmp2 & "' into AD(" & m1 & " To " & m2 & ") is '" & r & "'" & Chr$(13)
  3201.    Tmp1 = Tmp1 & "   The 3 (on " & r & ") first files in array are : " & Chr$(13) & Chr$(13)
  3202.    For i = 0 To 2
  3203.       Tmp1 = Tmp1 & AD(m1 + i) & Chr$(13)
  3204.    Next i
  3205.    Tmp1 = Tmp1 & Chr$(13)
  3206.    Tmp1 = Tmp1 & "   The 3 (on " & r & ") last files in array are : " & Chr$(13) & Chr$(13)
  3207.    For i = 0 To 2
  3208.       Tmp1 = Tmp1 & AD(m1 + r - 1 - 2 + i) & Chr$(13)
  3209.    Next i
  3210.    r = cArrayToListBox(List2.hWnd, AD())
  3211.    cStartBasisTimer
  3212.    For i = 1 To Item
  3213.       r = cFilesInDirToArray("C:\*.*", A_ALL, AD())
  3214.    Next i
  3215.    Tmp1 = Tmp1 & Chr$(13) & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  3216.    Label3.Caption = Tmp1
  3217. End Sub
  3218. Private Sub TestFilesInfoInDir()
  3219.    Dim Title      As String
  3220.    Dim Tmp        As String
  3221.    Dim Tmp1       As String
  3222.    Dim Tmp2       As String
  3223.    Dim i          As Integer
  3224.    Dim j          As Integer
  3225.    Dim k          As Long
  3226.    Dim FI         As tagFILEINFO
  3227.    Title = "The 7 first files in the current directory '" & cGetDefaultCurrentDir() & "' are" & Chr$(13) & Chr$(13)
  3228.    Tmp1 = Title
  3229.    Tmp2 = cFilesInfoInDir("*.*", FI, True)
  3230.    For i = 1 To 7
  3231.       Tmp1 = Tmp1 & Tmp2 & ", " & FI.fSize & ", " & FI.fDate & ", " & FI.fTime & ", " & FI.fAttribute & Chr$(13)
  3232.       Tmp2 = cFilesInfoInDir("*.*", FI, False)
  3233.    Next i
  3234.    Tmp1 = Tmp1 & Chr$(13)
  3235.    cStartBasisTimer
  3236.    For i = 1 To Item
  3237.       Tmp = cFilesInfoInDir("*.*", FI, True)
  3238.    Next i
  3239.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  3240.    Label3.Caption = Tmp1
  3241. End Sub
  3242. Private Sub TestFileSize()
  3243.    Dim Title      As String
  3244.    Dim Tmp        As String
  3245.    Dim Tmp1       As String
  3246.    Dim Tmp2       As String
  3247.    Dim i          As Integer
  3248.    Dim j          As Integer
  3249.    Dim k          As Long
  3250.    Tmp1 = "File size for t2win-16.dll is " & cFileSize("t2win-16.dll") & Chr$(13) & Chr$(13)
  3251.    Tmp1 = Tmp1 & "File size for Path \windows " & cFileSize("\windows") & Chr$(13) & Chr$(13)
  3252.    Tmp1 = Tmp1 & "File size for Path \windows\wintime " & cFileSize("\windows\wintime") & Chr$(13) & Chr$(13)
  3253.    cStartBasisTimer
  3254.    For i = 1 To Item
  3255.       k = cFileSize("t2win-16.dll")
  3256.    Next i
  3257.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  3258.    Label3.Caption = Tmp1
  3259. End Sub
  3260. Private Sub TestFileSort(SortMethod As Integer, VarFix As Integer)
  3261.    Dim Title      As String
  3262.    Dim Tmp        As String
  3263.    Dim Tmp1       As String
  3264.    Dim Tmp2       As String
  3265.    Dim Tmp3       As String
  3266.    Dim i          As Integer
  3267.    Dim j          As Integer
  3268.    Dim N          As Integer
  3269.    Dim m          As Double
  3270.    Tmp = "c:\autoexec.bat"
  3271.    Tmp2 = "c:\ae" & Format$(SortMethod) & ".tab"
  3272.    Close #1
  3273.    Open Tmp For Input Shared As #1
  3274.    While Not EOF(1)
  3275.       Line Input #1, Tmp3
  3276.       List1.AddItem Tmp3
  3277.    Wend
  3278.    Close #1
  3279.    If (VarFix = False) Then
  3280.       j = cFileSort("c:\autoexec.bat", Tmp2, SortMethod, -1, -1, -1, N)
  3281.    Else
  3282.       'j = cFileSort("c:\autoexec.bat", Tmp2, SortMethod, 20, 0, 10, n)
  3283.       j = cFileSort("c:\tmp\_dat_hr.Dat", "c:\tmp\tmp" & SortMethod & ".tmp", SortMethod, 50, 0, 11, N)
  3284.    End If
  3285.    Close #1
  3286.    Open Tmp2 For Input Shared As #1
  3287.    While Not EOF(1)
  3288.       Line Input #1, Tmp3
  3289.       List2.AddItem Tmp3
  3290.    Wend
  3291.    Close #1
  3292.    Select Case SortMethod
  3293.       Case (SORT_ASCENDING + SORT_CASE_SENSITIVE):
  3294.          Tmp1 = Tmp1 + "Sort '" & Tmp & "' into '" & Tmp2 & "' in ASC and CS is '" & j & "' and records are '" & N & "'"
  3295.       Case (SORT_DESCENDING + SORT_CASE_SENSITIVE):
  3296.          Tmp1 = Tmp1 + "Sort '" & Tmp & "' into '" & Tmp2 & "' in DSC and CS is '" & j & "' and records are '" & N & "'"
  3297.       Case (SORT_ASCENDING + SORT_CASE_INSENSITIVE):
  3298.          Tmp1 = Tmp1 + "Sort '" & Tmp & "' into '" & Tmp2 & "' in ASC and NS is '" & j & "' and records are '" & N & "'"
  3299.       Case (SORT_DESCENDING + SORT_CASE_INSENSITIVE):
  3300.          Tmp1 = Tmp1 + "Sort '" & Tmp & "' into '" & Tmp2 & "' in DSC and NS is '" & j & "' and records are '" & N & "'"
  3301.    End Select
  3302.    Tmp1 = Tmp1 & Chr$(13) & Chr$(13)
  3303.    cStartBasisTimer
  3304.    For i = 1 To ItemFile
  3305.       j = cFileSort(Tmp, Tmp2, SortMethod, -1, -1, -1, N)
  3306.       DoEvents
  3307.    Next i
  3308.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  3309.    Label3.Caption = Tmp1
  3310. End Sub
  3311. Private Sub TestFileSR()
  3312.    Dim Title      As String
  3313.    Dim Tmp        As String
  3314.    Dim Tmp1       As String
  3315.    Dim Tmp2       As String
  3316.    Dim Tmp3       As String
  3317.    Dim Tmp4       As String
  3318.    Dim i          As Integer
  3319.    Dim j          As Long
  3320.    Tmp1 = ""
  3321.    Tmp = "c:\autoexec.bat"
  3322.    Tmp2 = "c:\autoexec.tab"
  3323.    Tmp3 = "SET "
  3324.    Tmp4 = "rem SET "
  3325.    Tmp1 = Tmp1 & "File Copy " & Tmp & " to " & Tmp2 & " is " & cFileCopy(Tmp, Tmp2) & Chr$(13) & Chr$(13)
  3326.    Tmp1 = Tmp1 & "File Search-Replace (insensitive) : '" & Tmp3 & "' -> '" & Tmp4 & "' in '" & Tmp2 & "' is " & cFileSearchAndReplace(Tmp2, Tmp3, Tmp4, "c:\tmp.tmp", False) & Chr$(13) & Chr$(13)
  3327.    Tmp1 = Tmp1 & "File Search-Replace (sensitive) : '" & Tmp4 & "' -> '" & Tmp3 & "' in '" & Tmp2 & "' is " & cFileSearchAndReplace(Tmp2, Tmp4, Tmp3, "c:\tmp.tmp", True) & Chr$(13) & Chr$(13)
  3328.    Tmp1 = Tmp1 & "Compare file contents (insensitive) " & Tmp2 & " with " & Tmp & " is " & IIf(cCmpFileContents(Tmp2, Tmp, False) = True, "same", "not same") & Chr$(13) & Chr$(13)
  3329.    cStartBasisTimer
  3330.    For i = 1 To Item
  3331.       If ((i Mod 2) = 1) Then
  3332.          j = cFileSearchAndReplace(Tmp2, Tmp3, Tmp4, "", True)
  3333.       Else
  3334.          j = cFileSearchAndReplace(Tmp2, Tmp4, Tmp3, "", True)
  3335.       End If
  3336.    Next i
  3337.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  3338.    Label3.Caption = Tmp1
  3339. End Sub
  3340. Private Sub TestFilesSize()
  3341.    Dim Title      As String
  3342.    Dim Tmp        As String
  3343.    Dim Tmp1       As String
  3344.    Dim Tmp2       As String
  3345.    Dim i          As Integer
  3346.    Dim j          As Integer
  3347.    Dim k          As Long
  3348.    Dim Size1      As Long
  3349.    Dim Size2      As Long
  3350.    Tmp1 = ""
  3351.    Tmp1 = Tmp1 & "Size of files c:\*.* is " & cFilesSize("c:\*.*") & Chr$(13)
  3352.    Tmp1 = Tmp1 & "Size of files c:\*.bat is " & cFilesSize("c:\*.bat") & Chr$(13)
  3353.    Tmp1 = Tmp1 & "Size of files c:\*.sys is " & cFilesSize("c:\*.sys") & Chr$(13)
  3354.    Tmp1 = Tmp1 & "Size of files c:\*.com is " & cFilesSize("c:\*.com") & Chr$(13)
  3355.    Tmp1 = Tmp1 & Chr$(13)
  3356.    Tmp1 = Tmp1 & "Size of files c:\*.* on disk is " & cFilesSizeOnDisk("c:\*.*") & Chr$(13)
  3357.    Tmp1 = Tmp1 & "Size of files c:\*.bat on disk is " & cFilesSizeOnDisk("c:\*.bat") & Chr$(13)
  3358.    Tmp1 = Tmp1 & "Size of files c:\*.sys on disk is " & cFilesSizeOnDisk("c:\*.sys") & Chr$(13)
  3359.    Tmp1 = Tmp1 & "Size of files c:\*.com on disk is " & cFilesSizeOnDisk("c:\*.com") & Chr$(13)
  3360.    Tmp1 = Tmp1 & Chr$(13)
  3361.    Tmp1 = Tmp1 & "Slack of files c:\*.* on disk is " & cFilesSlack("c:\*.*", Size1, Size2) & " %" & Chr$(13)
  3362.    Tmp1 = Tmp1 & "Slack of files c:\*.bat on disk is " & cFilesSlack("c:\*.bat", Size1, Size2) & " %" & Chr$(13)
  3363.    Tmp1 = Tmp1 & "Slack of files c:\*.sys on disk is " & cFilesSlack("c:\*.sys", Size1, Size2) & " %" & Chr$(13)
  3364.    Tmp1 = Tmp1 & "Slack of files c:\*.com on disk is " & cFilesSlack("c:\*.com", Size1, Size2) & " %" & Chr$(13)
  3365.    cStartBasisTimer
  3366.    For i = 1 To 10
  3367.       k = cFilesSize("c:\*.*")
  3368.    Next i
  3369.    Tmp1 = Tmp1 & "speed for " & 10 & " = " & cReadBasisTimer() & " ms"
  3370.    Label3.Caption = Tmp1
  3371. End Sub
  3372. Private Sub TestFileStatictics()
  3373.    Dim Title      As String
  3374.    Dim Tmp        As String
  3375.    Dim Tmp1       As String
  3376.    Dim Tmp2       As String
  3377.    Dim Tmp3       As String
  3378.    Dim Tmp4       As String
  3379.    Dim i          As Integer
  3380.    Dim j          As Long
  3381.    Dim nL         As Long
  3382.    Dim nW         As Long
  3383.    Dim nC         As Long
  3384.    Tmp1 = ""
  3385.    Tmp = "c:\autoexec.bat"
  3386.    Tmp1 = Tmp1 & "File statictics for '" & Tmp & "' is " & cFileStatistics(Tmp, nL, nW, nC) & Chr$(13)
  3387.    Tmp1 = Tmp1 & "number of lines : " & nL & Chr$(13)
  3388.    Tmp1 = Tmp1 & "number of words : " & nW & Chr$(13)
  3389.    Tmp1 = Tmp1 & "number of chars : " & nC & Chr$(13) & Chr$(13)
  3390.    Tmp = "c:\config.sys"
  3391.    Tmp1 = Tmp1 & "File statictics for '" & Tmp & "' is " & cFileStatistics(Tmp, nL, nW, nC) & Chr$(13)
  3392.    Tmp1 = Tmp1 & "number of lines : " & nL & Chr$(13)
  3393.    Tmp1 = Tmp1 & "number of words : " & nW & Chr$(13)
  3394.    Tmp1 = Tmp1 & "number of chars : " & nC & Chr$(13) & Chr$(13)
  3395.    cStartBasisTimer
  3396.    For i = 1 To Item
  3397.       j = cFileStatistics(Tmp, nL, nW, nC)
  3398.    Next i
  3399.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  3400.    Label3.Caption = Tmp1
  3401. End Sub
  3402. Private Sub TestFileStatistic()
  3403.    Dim Title      As String
  3404.    Dim Tmp        As String
  3405.    Dim Tmp1       As String
  3406.    Dim Tmp2       As String
  3407.    Dim i          As Integer
  3408.    Dim j          As Integer
  3409.    Dim k          As Long
  3410.    Tmp1 = "File drive for t2win-16.dll is " & cFileDrive("t2win-16.dll") & Chr$(13) & Chr$(13)
  3411.    Tmp1 = Tmp1 & "File last time modified for t2win-16.dll is " & cFileLastTimeModified("t2win-16.dll") & Chr$(13) & Chr$(13)
  3412.    Tmp1 = Tmp1 & "File last date modified for t2win-16.dll is " & cFileLastDateModified("t2win-16.dll") & Chr$(13) & Chr$(13)
  3413.    cStartBasisTimer
  3414.    For i = 1 To ItemFile
  3415.       Tmp = cFileDrive("t2win-16.dll")
  3416.    Next i
  3417.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  3418.    Label3.Caption = Tmp1
  3419. End Sub
  3420. Private Sub TestFileToX()
  3421.    Dim Title      As String
  3422.    Dim Tmp        As String
  3423.    Dim Tmp1       As String
  3424.    Dim Tmp2       As String
  3425.    Dim Tmp3       As String
  3426.    Dim i          As Integer
  3427.    Dim j          As Long
  3428.    Tmp1 = ""
  3429.    Tmp = "c:\autoexec.bat"
  3430.    Tmp2 = "c:\autoexec.lwr"
  3431.    Tmp3 = "c:\autoexec.upr"
  3432.    Tmp1 = Tmp1 & "File to lower '" & Tmp & "' to '" & Tmp2 & "' is " & cFileToLower(Tmp, Tmp2) & Chr$(13) & Chr$(13)
  3433.    Tmp1 = Tmp1 & "File to upper '" & Tmp & "' to '" & Tmp3 & "' is " & cFileToUpper(Tmp, Tmp3) & Chr$(13) & Chr$(13)
  3434.    cStartBasisTimer
  3435.    For i = 1 To Item
  3436.       j = cFileToLower(Tmp, Tmp2)
  3437.    Next i
  3438.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  3439.    Label3.Caption = Tmp1
  3440. End Sub
  3441. Private Sub TestFileVersion()
  3442.    Dim Title      As String
  3443.    Dim Tmp        As String
  3444.    Dim Tmp1       As String
  3445.    Dim Tmp2       As String
  3446.    Dim i          As Integer
  3447.    Dim j          As Integer
  3448.    Dim k          As Long
  3449.    Dim status                 As Integer
  3450.    Tmp = cGetSystemDirectory() & "\krnl386.exe"
  3451.    Tmp1 = Tmp1 & "File Version for '" & Tmp & "' is " & Chr$(13)
  3452.    For i = VER_VERSION_PRODUCT To VER_PRODUCT_VERSION
  3453.       Tmp1 = Tmp1 & "   " & i & " = " & cGetFileVersion(Tmp, i) & Chr$(13)
  3454.    Next i
  3455.    Tmp = cGetSystemDirectory() & "\t2win-16.dll"
  3456.    Tmp1 = Tmp1 & "File Version for '" & Tmp & "' is " & Chr$(13)
  3457.    For i = VER_VERSION_PRODUCT To VER_PRODUCT_VERSION
  3458.       Tmp1 = Tmp1 & "   " & i & " = " & cGetFileVersion(Tmp, i) & Chr$(13)
  3459.    Next i
  3460.    cStartBasisTimer
  3461.    For i = 1 To ItemFile
  3462.       Tmp = cGetFileVersion(Tmp, -1)
  3463.    Next i
  3464.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  3465.    Label3.Caption = Tmp1
  3466. End Sub
  3467. Private Sub TestFileVersionInfo()
  3468.    Dim Title      As String
  3469.    Dim Tmp        As String
  3470.    Dim Tmp1       As String
  3471.    Dim Tmp2       As String
  3472.    Dim i          As Integer
  3473.    Dim j          As Integer
  3474.    Dim k          As Long
  3475.    Dim status                 As Integer
  3476.    Dim FILEVERSIONINFO     As tagFILEVERSIONINFO
  3477.    Tmp = cGetSystemDirectory() & "\krnl386.exe"
  3478.    Tmp1 = Tmp1 & "File Version Information for '" & Tmp & "' is " & Chr$(13)
  3479.    status = cGetFileVersionInfo(Tmp, FILEVERSIONINFO)
  3480.    Tmp1 = Tmp1 & "   VersionProduct = " & FILEVERSIONINFO.VersionProduct & Chr$(13)
  3481.    Tmp1 = Tmp1 & "   FileDescription = " & FILEVERSIONINFO.FileDescription & Chr$(13)
  3482.    Tmp1 = Tmp1 & "   FileVersion = " & FILEVERSIONINFO.FileVersion & Chr$(13)
  3483.    Tmp1 = Tmp1 & "   InternalName = " & FILEVERSIONINFO.InternalName & Chr$(13)
  3484.    Tmp1 = Tmp1 & "   LegalCopyright = " & FILEVERSIONINFO.LegalCopyright & Chr$(13)
  3485.    Tmp1 = Tmp1 & "   LegalTrademarks = " & FILEVERSIONINFO.LegalTrademarks & Chr$(13)
  3486.    Tmp1 = Tmp1 & "   Comments = " & FILEVERSIONINFO.Comments & Chr$(13)
  3487.    Tmp1 = Tmp1 & "   ProductName = " & FILEVERSIONINFO.ProductName & Chr$(13)
  3488.    Tmp1 = Tmp1 & "   ProductVersion = " & FILEVERSIONINFO.ProductVersion & Chr$(13) & Chr$(13)
  3489.    Tmp = cGetSystemDirectory() & "\t2win-16.dll"
  3490.    Tmp1 = Tmp1 & "File Version Information for '" & Tmp & "' is " & Chr$(13)
  3491.    status = cGetFileVersionInfo(Tmp, FILEVERSIONINFO)
  3492.    Tmp1 = Tmp1 & "   VersionProduct = " & FILEVERSIONINFO.VersionProduct & Chr$(13)
  3493.    Tmp1 = Tmp1 & "   FileDescription = " & FILEVERSIONINFO.FileDescription & Chr$(13)
  3494.    Tmp1 = Tmp1 & "   FileVersion = " & FILEVERSIONINFO.FileVersion & Chr$(13)
  3495.    Tmp1 = Tmp1 & "   InternalName = " & FILEVERSIONINFO.InternalName & Chr$(13)
  3496.    Tmp1 = Tmp1 & "   LegalCopyright = " & FILEVERSIONINFO.LegalCopyright & Chr$(13)
  3497.    Tmp1 = Tmp1 & "   LegalTrademarks = " & FILEVERSIONINFO.LegalTrademarks & Chr$(13)
  3498.    Tmp1 = Tmp1 & "   Comments = " & FILEVERSIONINFO.Comments & Chr$(13)
  3499.    Tmp1 = Tmp1 & "   ProductName = " & FILEVERSIONINFO.ProductName & Chr$(13)
  3500.    Tmp1 = Tmp1 & "   ProductVersion = " & FILEVERSIONINFO.ProductVersion & Chr$(13) & Chr$(13)
  3501.    cStartBasisTimer
  3502.    For i = 1 To ItemFile
  3503.       status = cGetFileVersionInfo(Tmp, FILEVERSIONINFO)
  3504.    Next i
  3505.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  3506.    Label3.Caption = Tmp1
  3507. End Sub
  3508. Private Sub TestFill()
  3509.    Dim Title      As String
  3510.    Dim Tmp        As String
  3511.    Dim Tmp1       As String
  3512.    Dim Tmp2       As String
  3513.    Dim i          As Integer
  3514.    Dim j          As Integer
  3515.    Tmp = Text1.Text
  3516.    Title = "Fill of [" & Tmp & "] with [*=] is "
  3517.    Call cFill(Tmp, "*=")
  3518.    Tmp1 = Title & Tmp & Chr$(13) & Chr$(13)
  3519.    cStartBasisTimer
  3520.    For i = 1 To Item
  3521.       Call cFill(Tmp, "=*")
  3522.    Next i
  3523.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  3524.    Label3.Caption = Tmp1
  3525. End Sub
  3526. Private Sub TestFillI()
  3527.    Dim Title      As String
  3528.    Dim Tmp        As String
  3529.    Dim Tmp1       As String
  3530.    Dim Tmp2       As String
  3531.    Dim i          As Integer
  3532.    Dim j          As Integer
  3533.    Dim m          As Double
  3534.    ReDim array(ItemMean) As Integer
  3535.    Randomize Timer
  3536.    For i = LBound(array) To UBound(array)
  3537.       array(i) = 0
  3538.       List1.AddItem "" & array(i)
  3539.    Next i
  3540.    j = cFillI(array(), 1)
  3541.    For i = LBound(array) To UBound(array)
  3542.       List2.AddItem "" & array(i)
  3543.    Next i
  3544.    Tmp1 = Tmp1 & "Fill 1 to element 1 of an integer array is : " & array(1) & Chr$(13) & Chr$(13)
  3545.    Tmp1 = Tmp1 & "Fill 1 to element " & ItemMean & " of an integer array is : " & array(ItemMean) & Chr$(13) & Chr$(13)
  3546.    cStartBasisTimer
  3547.    For i = 1 To ItemFile
  3548.       j = cFillI(array(), 1)
  3549.    Next i
  3550.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  3551.    Label3.Caption = Tmp1
  3552. End Sub
  3553. Private Sub TestFillIncrI()
  3554.    Dim Title      As String
  3555.    Dim Tmp        As String
  3556.    Dim Tmp1       As String
  3557.    Dim Tmp2       As String
  3558.    Dim i          As Integer
  3559.    Dim j          As Integer
  3560.    Dim m          As Double
  3561.    ReDim array(ItemMean) As Integer
  3562.    Randomize Timer
  3563.    For i = LBound(array) To UBound(array)
  3564.       array(i) = 0
  3565.       List1.AddItem "" & array(i)
  3566.    Next i
  3567.    j = cFillIncrI(array(), -2, 3)
  3568.    For i = LBound(array) To UBound(array)
  3569.       List2.AddItem "" & array(i)
  3570.    Next i
  3571.    Tmp1 = Tmp1 & "Fill -2 by increment 3 to element 1 of an integer array is : " & array(1) & Chr$(13) & Chr$(13)
  3572.    Tmp1 = Tmp1 & "Fill -2 by increment 3 to element " & ItemMean & " of an integer array is : " & array(ItemMean) & Chr$(13) & Chr$(13)
  3573.    cStartBasisTimer
  3574.    For i = 1 To ItemFile
  3575.       j = cFillIncrI(array(), 1, 3)
  3576.    Next i
  3577.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  3578.    Label3.Caption = Tmp1
  3579. End Sub
  3580. Private Sub TestFilterBlocks()
  3581.    Dim Title      As String
  3582.    Dim Tmp        As String
  3583.    Dim Tmp1       As String
  3584.    Dim Tmp2       As String
  3585.    Dim i          As Integer
  3586.    Dim j          As Integer
  3587.    Tmp = Text1.Text
  3588.    Title = "Filter blocks between '/' and '/' in [" & Tmp & "] is " & Chr$(13) & Chr$(13)
  3589.    Tmp1 = Title & cFilterBlocks(Tmp, "//") & Chr$(13) & Chr$(13)
  3590.    Title = "Filter blocks between 'B' and 'I' in [" & Tmp & "] is " & Chr$(13) & Chr$(13)
  3591.    Tmp1 = Tmp1 & Title & cFilterBlocks(Tmp, "BI") & Chr$(13) & Chr$(13)
  3592.    cStartBasisTimer
  3593.    For i = 1 To Item
  3594.       Tmp2 = cFilterBlocks(Tmp, "//")
  3595.    Next i
  3596.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  3597.    Label3.Caption = Tmp1
  3598. End Sub
  3599. Private Sub TestFilterChars()
  3600.    Dim Title      As String
  3601.    Dim Tmp        As String
  3602.    Dim Tmp1       As String
  3603.    Dim Tmp2       As String
  3604.    Dim i          As Integer
  3605.    Dim j          As Integer
  3606.    Tmp = Text1.Text
  3607.    Title = "Filter 'B','/' in [" & Tmp & "] is "
  3608.    Tmp1 = Title & cFilterChars(Tmp, "B/") & Chr$(13) & Chr$(13)
  3609.    cStartBasisTimer
  3610.    For i = 1 To Item
  3611.       Tmp2 = cFilterChars(Tmp, "B/")
  3612.    Next i
  3613.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  3614.    Label3.Caption = Tmp1
  3615. End Sub
  3616. Private Sub TestFindBitReset()
  3617.    Dim Title      As String
  3618.    Dim Tmp        As String
  3619.    Dim Tmp1       As String
  3620.    Dim Tmp2       As String
  3621.    Dim i          As Integer
  3622.    Dim j          As Integer
  3623.    Tmp = Text1.Text
  3624.    Tmp1 = "The following bits on '" & Tmp & "' are not Set (False) " & Chr$(13) & Chr$(13)
  3625.    j = True
  3626.    Do
  3627.       j = cFindBitReset(Tmp, j)
  3628.       If (j <> True) Then Tmp1 = Tmp1 & j & ", "
  3629.    Loop Until (j = True)
  3630.    Tmp1 = Left$(Tmp1, Len(Tmp1) - 1)
  3631.    Tmp1 = Tmp1 & Chr$(13) & Chr$(13)
  3632.    j = 0
  3633.    cStartBasisTimer
  3634.    For i = 1 To Item
  3635.       j = cFindBitReset(Tmp, j)
  3636.    Next i
  3637.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  3638.    Label3.Caption = Tmp1
  3639. End Sub
  3640. Private Sub TestFindBitSet()
  3641.    Dim Title      As String
  3642.    Dim Tmp        As String
  3643.    Dim Tmp1       As String
  3644.    Dim Tmp2       As String
  3645.    Dim i          As Integer
  3646.    Dim j          As Integer
  3647.    Tmp = Text1.Text
  3648.    Tmp1 = "The following bits on '" & Tmp & "' are Set (True) " & Chr$(13) & Chr$(13)
  3649.    j = True
  3650.    Do
  3651.       j = cFindBitSet(Tmp, j)
  3652.       If (j <> True) Then Tmp1 = Tmp1 & j & ", "
  3653.    Loop Until (j = True)
  3654.    Tmp1 = Left$(Tmp1, Len(Tmp1) - 1)
  3655.    Tmp1 = Tmp1 & Chr$(13) & Chr$(13)
  3656.    j = 0
  3657.    cStartBasisTimer
  3658.    For i = 1 To Item
  3659.       j = cFindBitSet(Tmp, j)
  3660.    Next i
  3661.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  3662.    Label3.Caption = Tmp1
  3663. End Sub
  3664. Private Sub TestFindFileInEnv()
  3665.    Dim Title      As String
  3666.    Dim Tmp        As String
  3667.    Dim Tmp1       As String
  3668.    Dim Tmp2       As String
  3669.    Dim i          As Integer
  3670.    Dim j          As Integer
  3671.    j = cFindFileInEnv("win.com", "windir")
  3672.    Tmp1 = "The file 'win.com' is " & IIf(j, "found", "not found") & " in the WINDIR" & Chr$(13) & Chr$(13)
  3673.    cStartBasisTimer
  3674.    For i = 1 To ItemFile
  3675.       j = cFindFileInEnv("win.com", "windir")
  3676.    Next i
  3677.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  3678.    Label3.Caption = Tmp1
  3679. End Sub
  3680. Private Sub TestFindFileInPath()
  3681.    Dim Title      As String
  3682.    Dim Tmp        As String
  3683.    Dim Tmp1       As String
  3684.    Dim Tmp2       As String
  3685.    Dim i          As Integer
  3686.    Dim j          As Integer
  3687.    j = cFindFileInPath("win.com")
  3688.    Tmp1 = "The file 'win.com' is " & IIf(j, "found", "not found") & " in the PATH" & Chr$(13) & Chr$(13)
  3689.    cStartBasisTimer
  3690.    For i = 1 To ItemFile
  3691.       j = cFindFileInPath("win.com")
  3692.    Next i
  3693.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  3694.    Label3.Caption = Tmp1
  3695. End Sub
  3696. Private Sub TestFloppyInfo()
  3697.    Dim Title      As String
  3698.    Dim Tmp        As String
  3699.    Dim Tmp1       As String
  3700.    Dim Tmp2       As String
  3701.    Dim i          As Integer
  3702.    Dim j          As Integer
  3703.    Dim nHds       As Integer
  3704.    Dim nCyls      As Integer
  3705.    Dim nSecs      As Integer
  3706.    Tmp1 = ""
  3707.    For i = 1 To 3
  3708.       j = cFloppyInfo(Chr$(64 + i), nHds, nCyls, nSecs)
  3709.       Tmp1 = Tmp1 & "'" & Chr$(64 + i) & ":' is " & j & " (" & nHds & "," & nCyls & "," & nSecs & ")" & Chr$(13)
  3710.    Next i
  3711.    Tmp1 = Tmp1 + Chr$(13)
  3712.    cStartBasisTimer
  3713.    For i = 1 To Item
  3714.       j = cFloppyInfo("A", nHds, nCyls, nSecs)
  3715.    Next i
  3716.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  3717.    Label3.Caption = Tmp1
  3718. End Sub
  3719. Private Sub TestFraction()
  3720.    Dim Title      As String
  3721.    Dim Tmp        As String
  3722.    Dim Tmp1       As String
  3723.    Dim Tmp2       As String
  3724.    Dim i          As Integer
  3725.    Dim v          As Double
  3726.    Dim N          As Double
  3727.    Dim p          As Double
  3728.    Dim q          As Double
  3729.    Dim e          As Integer
  3730.    Tmp1 = "Determining fraction part (numerator/denominator) for the following value " & Chr$(13) & Chr$(13)
  3731.    N = 0.75
  3732.    v = cFraction(N, p, q)
  3733.    Tmp1 = Tmp1 & N & " is " & p & " / " & q & Chr$(13)
  3734.    Tmp1 = Tmp1 & "   value is " & v & Chr$(13) & Chr$(13)
  3735.    N = 4.12
  3736.    v = cFraction(N, p, q)
  3737.    Tmp1 = Tmp1 & N & " is " & p & " / " & q & Chr$(13)
  3738.    Tmp1 = Tmp1 & "   value is " & v & Chr$(13) & Chr$(13)
  3739.    N = 365.25
  3740.    v = cFraction(N, p, q)
  3741.    Tmp1 = Tmp1 & N & " is " & p & " / " & q & Chr$(13)
  3742.    Tmp1 = Tmp1 & "   value is " & v & Chr$(13) & Chr$(13)
  3743.    N = 3.14
  3744.    v = cFraction(N, p, q)
  3745.    Tmp1 = Tmp1 & N & " is " & p & " / " & q & Chr$(13)
  3746.    Tmp1 = Tmp1 & "   value is " & v & Chr$(13) & Chr$(13)
  3747.    N = 3.14159
  3748.    v = cFraction(N, p, q)
  3749.    Tmp1 = Tmp1 & N & " is " & p & " / " & q & Chr$(13)
  3750.    Tmp1 = Tmp1 & "   value is " & v & Chr$(13) & Chr$(13)
  3751.    N = 3.14159265
  3752.    v = cFraction(N, p, q)
  3753.    Tmp1 = Tmp1 & N & " is " & p & " / " & q & Chr$(13)
  3754.    Tmp1 = Tmp1 & "   value is " & v & Chr$(13) & Chr$(13)
  3755.    N = 0.9999999
  3756.    v = cFraction(N, p, q)
  3757.    Tmp1 = Tmp1 & N & " is " & p & " / " & q & Chr$(13)
  3758.    Tmp1 = Tmp1 & "   value is " & v & Chr$(13) & Chr$(13)
  3759.    cStartBasisTimer
  3760.    For i = 1 To Item
  3761.       v = cFraction(N, p, q)
  3762.    Next i
  3763.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  3764.    Label3.Caption = Tmp1
  3765. End Sub
  3766. Private Sub TestFullPath()
  3767.    Dim Title      As String
  3768.    Dim Tmp        As String
  3769.    Dim Tmp1       As String
  3770.    Dim Tmp2       As String
  3771.    Dim Tmp3       As String
  3772.    Dim i          As Integer
  3773.    Dim j          As Long
  3774.    Tmp1 = ""
  3775.    Tmp = "C:\AUTOEXEC.BAT"
  3776.    Tmp1 = Tmp1 & "Full Path of " & Tmp & " is " & cFullPath(Tmp) & Chr$(13) & Chr$(13)
  3777.    Tmp = cGetSystemDirectory() & "\t2win-16.dll"
  3778.    Tmp1 = Tmp1 & "Full Path of " & Tmp & " is " & cFullPath(Tmp) & Chr$(13) & Chr$(13)
  3779.    Tmp = cFilesInDirectory(cGetDefaultCurrentDir() + "\*.*", True)
  3780.    Tmp1 = Tmp1 & "Full Path of " & Tmp & " is " & cFullPath(Tmp) & Chr$(13) & Chr$(13)
  3781.    cStartBasisTimer
  3782.    For i = 1 To Item
  3783.       Tmp = cFullPath(Tmp)
  3784.    Next i
  3785.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  3786.    Label3.Caption = Tmp1
  3787. End Sub
  3788. Private Sub TestGetBit()
  3789.    Dim Title      As String
  3790.    Dim Tmp        As String
  3791.    Dim Tmp1       As String
  3792.    Dim Tmp2       As String
  3793.    Dim i          As Integer
  3794.    Dim j          As Integer
  3795.    Tmp = Text1.Text
  3796.    Title = "bit 0,7,3 of [" & Tmp & "] is "
  3797.    Tmp1 = Title & cGetBit(Tmp, 0) & " " & cGetBit(Tmp, 7) & " " & cGetBit(Tmp, 3) & " " & Chr$(13) & Chr$(13)
  3798.    Title = "bit 23,30,38 of [" & Tmp & "] is "
  3799.    Tmp1 = Tmp1 & Title & cGetBit(Tmp, 23) & " " & cGetBit(Tmp, 30) & " " & cGetBit(Tmp, 38) & " " & Chr$(13) & Chr$(13)
  3800.    cStartBasisTimer
  3801.    For i = 1 To Item
  3802.       j = cGetBit(Tmp, i)
  3803.    Next i
  3804.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  3805.    Label3.Caption = Tmp1
  3806. End Sub
  3807. Private Sub TestGetBlock()
  3808.    Dim Title      As String
  3809.    Dim Tmp        As String
  3810.    Dim Tmp1       As String
  3811.    Dim Tmp2       As String
  3812.    Dim i          As Integer
  3813.    Dim j          As Integer
  3814.    Tmp = Text1.Text
  3815.    Title = "The 2,4,1 of 2 chars of [" & Tmp & "] are "
  3816.    Tmp = Text1.Text
  3817.    Tmp1 = Title & "2:" & cGetBlock(Tmp, 2, 2) & " | 4:" & cGetBlock(Tmp, 4, 2) & " | 1:" & cGetBlock(Tmp, 1, 2) & Chr$(13) & Chr$(13)
  3818.    cStartBasisTimer
  3819.    For i = 1 To Item
  3820.       Tmp2 = cGetBlock(Tmp, 1, 2)
  3821.    Next i
  3822.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  3823.    Label3.Caption = Tmp1
  3824. End Sub
  3825. Private Sub TestGetCurrentDrive()
  3826.    Dim Title      As String
  3827.    Dim Tmp        As String
  3828.    Dim Tmp1       As String
  3829.    Dim Tmp2       As String
  3830.    Dim i          As Integer
  3831.    Dim j          As Integer
  3832.    Tmp = cGetCurrentDrive()
  3833.    Tmp1 = Tmp & " is the current drive" & Chr$(13) & Chr$(13)
  3834.    cStartBasisTimer
  3835.    For i = 1 To Item
  3836.       Tmp2 = cGetCurrentDrive()
  3837.       If (Tmp <> Tmp2) Then Beep
  3838.    Next i
  3839.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  3840.    Label3.Caption = Tmp1
  3841. End Sub
  3842. Private Sub TestGetDateSeparator()
  3843.    Dim Title      As String
  3844.    Dim Tmp        As String
  3845.    Dim Tmp1       As String
  3846.    Dim Tmp2       As String
  3847.    Dim i          As Integer
  3848.    Dim j          As Integer
  3849.    Tmp = cGetDateSeparator()
  3850.    Tmp1 = "The following char '" & Tmp & "' is the date separator" & Chr$(13) & Chr$(13)
  3851.    cStartBasisTimer
  3852.    For i = 1 To Item
  3853.       Tmp2 = cGetDateSeparator()
  3854.       If (Tmp <> Tmp2) Then Beep
  3855.    Next i
  3856.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  3857.    Label3.Caption = Tmp1
  3858. End Sub
  3859. Private Sub TestGetDefaultCurrentDir()
  3860.    Dim Title      As String
  3861.    Dim Tmp        As String
  3862.    Dim Tmp1       As String
  3863.    Dim Tmp2       As String
  3864.    Dim i          As Integer
  3865.    Dim j          As Integer
  3866.    Tmp = cGetDefaultCurrentDir()
  3867.    Tmp1 = Tmp & " is the current dir on the default drive" & Chr$(13) & Chr$(13)
  3868.    cStartBasisTimer
  3869.    For i = 1 To Item
  3870.       Tmp2 = cGetDefaultCurrentDir()
  3871.       If (Tmp <> Tmp2) Then Beep
  3872.    Next i
  3873.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  3874.    Label3.Caption = Tmp1
  3875. End Sub
  3876. Private Sub TestGetDiskFree()
  3877.    Dim Title      As String
  3878.    Dim Tmp        As String
  3879.    Dim Tmp1       As String
  3880.    Dim Tmp2       As String
  3881.    Dim i          As Integer
  3882.    Dim j          As Integer
  3883.    Dim k          As Long
  3884.    Dim ErrCode    As Integer
  3885.    Tmp1 = ""
  3886.    For i = 1 To 26
  3887.       k = cGetDiskFree(Chr$(64 + i))
  3888.       If (k <> True) Then
  3889.          Tmp1 = Tmp1 & "DiskFree for '" & Chr$(64 + i) & ":' is " & k & Chr$(13)
  3890.       End If
  3891.    Next i
  3892.    Tmp1 = Tmp1 + Chr$(13)
  3893.    cStartBasisTimer
  3894.    For i = 1 To Item
  3895.       k = cGetDiskFree("C")
  3896.    Next i
  3897.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  3898.    Label3.Caption = Tmp1
  3899. End Sub
  3900. Private Sub TestGetDiskSpace()
  3901.    Dim Title      As String
  3902.    Dim Tmp        As String
  3903.    Dim Tmp1       As String
  3904.    Dim Tmp2       As String
  3905.    Dim i          As Integer
  3906.    Dim j          As Integer
  3907.    Dim k          As Long
  3908.    Dim ErrCode    As Integer
  3909.    Tmp1 = ""
  3910.    For i = 1 To 26
  3911.       k = cGetDiskSpace(Chr$(64 + i))
  3912.       If (k <> True) Then
  3913.          Tmp1 = Tmp1 & "DiskSpace for '" & Chr$(64 + i) & ":' is " & k & Chr$(13)
  3914.       End If
  3915.    Next i
  3916.    Tmp1 = Tmp1 + Chr$(13)
  3917.    cStartBasisTimer
  3918.    For i = 1 To Item
  3919.       k = cGetDiskSpace("C")
  3920.    Next i
  3921.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  3922.    Label3.Caption = Tmp1
  3923. End Sub
  3924. Private Sub TestGetDiskUsed()
  3925.    Dim Title      As String
  3926.    Dim Tmp        As String
  3927.    Dim Tmp1       As String
  3928.    Dim Tmp2       As String
  3929.    Dim i          As Integer
  3930.    Dim j          As Integer
  3931.    Dim k          As Long
  3932.    Dim ErrCode    As Integer
  3933.    Tmp1 = ""
  3934.    For i = 1 To 26
  3935.       k = cGetDiskUsed(Chr$(64 + i))
  3936.       If (k <> True) Then
  3937.          Tmp1 = Tmp1 & "DiskUsed for '" & Chr$(64 + i) & ":' is " & k & Chr$(13)
  3938.       End If
  3939.    Next i
  3940.    Tmp1 = Tmp1 + Chr$(13)
  3941.    cStartBasisTimer
  3942.    For i = 1 To Item
  3943.       k = cGetDiskUsed("C")
  3944.    Next i
  3945.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  3946.    Label3.Caption = Tmp1
  3947. End Sub
  3948. Private Sub TestGetDriveCurrentDir()
  3949.    Dim Title      As String
  3950.    Dim Tmp        As String
  3951.    Dim Tmp1       As String
  3952.    Dim Tmp2       As String
  3953.    Dim i          As Integer
  3954.    Dim j          As Integer
  3955.    Tmp1 = ""
  3956.    For i = 1 To 26
  3957.       Tmp = cGetDriveCurrentDir(Chr$(64 + i))
  3958.       If (Tmp <> "") Then
  3959.          Tmp1 = Tmp1 & "The current directory in '" & Chr$(64 + i) & ":' is " & Tmp & Chr$(13)
  3960.       Else
  3961.          If (i = 1) Then Tmp1 = Tmp1 & "drive A: is missing" & Chr$(13)
  3962.          If (i = 2) Then Tmp1 = Tmp1 & "drive B: is missing" & Chr$(13)
  3963.       End If
  3964.    Next i
  3965.    Tmp1 = Tmp1 + Chr$(13)
  3966.    cStartBasisTimer
  3967.    For i = 1 To Item
  3968.       Tmp2 = cGetDriveCurrentDir("C")
  3969.    Next i
  3970.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  3971.    Label3.Caption = Tmp1
  3972. End Sub
  3973. Private Sub TestGetFullnameInEnv()
  3974.    Dim Title      As String
  3975.    Dim Tmp        As String
  3976.    Dim Tmp1       As String
  3977.    Dim Tmp2       As String
  3978.    Dim i          As Integer
  3979.    Dim j          As Integer
  3980.    Tmp = cGetFullNameInEnv("win.com", "windir")
  3981.    Tmp1 = "Full path for 'win.com' in 'windir' is " & Tmp & Chr$(13) & Chr$(13)
  3982.    cStartBasisTimer
  3983.    For i = 1 To ItemFile
  3984.       Tmp2 = cGetFullNameInEnv("win.com", "windir")
  3985.    Next i
  3986.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  3987.    Label3.Caption = Tmp1
  3988. End Sub
  3989. Private Sub TestGetFullnameInPath()
  3990.    Dim Title      As String
  3991.    Dim Tmp        As String
  3992.    Dim Tmp1       As String
  3993.    Dim Tmp2       As String
  3994.    Dim i          As Integer
  3995.    Dim j          As Integer
  3996.    Tmp = cGetFullNameInPath("win.com")
  3997.    Tmp1 = "Full path for 'win.com' is " & Tmp & Chr$(13) & Chr$(13)
  3998.    cStartBasisTimer
  3999.    For i = 1 To ItemFile
  4000.       Tmp2 = cGetFullNameInPath("win.com")
  4001.    Next i
  4002.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  4003.    Label3.Caption = Tmp1
  4004. End Sub
  4005. Private Sub TestGetIn()
  4006.    Dim Title      As String
  4007.    Dim Tmp        As String
  4008.    Dim Tmp1       As String
  4009.    Dim Tmp2       As String
  4010.    Dim i          As Integer
  4011.    Dim j          As Integer
  4012.    Tmp = Text1.Text
  4013.    Title = "The 2,4,1 blocks of [" & Tmp & "] are "
  4014.    Tmp = Text1.Text
  4015.    Tmp1 = Title & "2:" & cGetIn(Tmp, "/", 2) & " | 4:" & cGetIn(Tmp, "/", 4) & " | 1:" & cGetIn(Tmp, "/", 1) & Chr$(13) & Chr$(13)
  4016.    cStartBasisTimer
  4017.    For i = 1 To Item
  4018.       Tmp2 = cGetIn(Tmp, "/", 2)
  4019.    Next i
  4020.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  4021.    Label3.Caption = Tmp1
  4022. End Sub
  4023. Private Sub TestGetInR()
  4024.               
  4025.    Dim Title      As String
  4026.    Dim Tmp        As String
  4027.    Dim Tmp1       As String
  4028.    Dim Tmp2       As String
  4029.    Dim i          As Integer
  4030.    Dim j          As Integer
  4031.    Tmp = Text1.Text
  4032.    Tmp1 = Tmp1 + "GetInR" & Chr$(13)
  4033.    Tmp1 = Tmp1 + "The 2,4,1 blocks from the right of [" & Tmp & "] are "
  4034.    Tmp1 = Tmp1 & "2:" & cGetInR(Tmp, "/", 2) & " | 4:" & cGetInR(Tmp, "/", 4) & " | 1:" & cGetInR(Tmp, "/", 1) & Chr$(13) & Chr$(13)
  4035.    Tmp1 = Tmp1 + "GetInPart" & Chr$(13)
  4036.    Tmp1 = Tmp1 + "The first and the second part from the left of [" & Tmp & "] are " & Chr$(13)
  4037.    Tmp1 = Tmp1 & cGetInPart(Tmp, "/", True) & " | " & cGetInPart(Tmp, "/", False) & Chr$(13) & Chr$(13)
  4038.    Tmp1 = Tmp1 + "GetInPartR" & Chr$(13)
  4039.    Tmp1 = Tmp1 + "The first and the second part from the right of [" & Tmp & "] are " & Chr$(13)
  4040.    Tmp1 = Tmp1 & cGetInPartR(Tmp, "/", True) & " | " & cGetInPartR(Tmp, "/", False) & Chr$(13) & Chr$(13)
  4041.    Tmp = UCase$("c:\vberr.hnd\source.mak\vbtrcprf.mak")
  4042.    Tmp1 = Tmp1 + "GetInPart" & Chr$(13)
  4043.    Tmp1 = Tmp1 + "The first and the second part from the left of [" & Tmp & "] are " & Chr$(13)
  4044.    Tmp1 = Tmp1 & cGetInPart(Tmp, ".", True) & " | " & cGetInPart(Tmp, ".", False) & Chr$(13) & Chr$(13)
  4045.    Tmp1 = Tmp1 + "GetInPartR" & Chr$(13)
  4046.    Tmp1 = Tmp1 + "The first and the second part from the right of [" & Tmp & "] are " & Chr$(13)
  4047.    Tmp1 = Tmp1 & cGetInPartR(Tmp, ".", True) & " | " & cGetInPartR(Tmp, ".", False) & Chr$(13) & Chr$(13)
  4048.    cStartBasisTimer
  4049.    For i = 1 To Item
  4050.       Tmp2 = cGetInR(Tmp, "/", 2)
  4051.    Next i
  4052.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  4053.    Label3.Caption = Tmp1
  4054. End Sub
  4055. Private Sub TestGetNetConnection()
  4056.    Dim Title      As String
  4057.    Dim Tmp        As String
  4058.    Dim Tmp1       As String
  4059.    Dim Tmp2       As String
  4060.    Dim i          As Integer
  4061.    Dim j          As Integer
  4062.    Dim ErrCode    As Integer
  4063.    Tmp1 = ""
  4064.    For i = 1 To 26
  4065.       Tmp = cGetNetConnection(Chr$(64 + i) & ":", ErrCode)
  4066.       If (ErrCode = True) Then
  4067.          Tmp1 = Tmp1 & "'" & Chr$(64 + i) & ":' is " & Tmp & Chr$(13)
  4068.       End If
  4069.    Next i
  4070.    For i = 1 To 3
  4071.       Tmp = cGetNetConnection("LPT" & i & ":", ErrCode)
  4072.       If (ErrCode = True) Then
  4073.          Tmp1 = Tmp1 & "'LPT" & i & ":' is " & Tmp & Chr$(13)
  4074.       End If
  4075.    Next i
  4076.    Tmp1 = Tmp1 + Chr$(13)
  4077.    cStartBasisTimer
  4078.    For i = 1 To ItemFile
  4079.       Tmp = cGetNetConnection("C", ErrCode)
  4080.    Next i
  4081.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  4082.    Label3.Caption = Tmp1
  4083. End Sub
  4084. Private Sub TestGetSystemDirectory()
  4085.    Dim Title      As String
  4086.    Dim Tmp        As String
  4087.    Dim Tmp1       As String
  4088.    Dim Tmp2       As String
  4089.    Dim i          As Integer
  4090.    Dim j          As Integer
  4091.    Tmp = cGetSystemDirectory()
  4092.    Tmp1 = Tmp & " is the system directory for Windows" & Chr$(13) & Chr$(13)
  4093.    cStartBasisTimer
  4094.    For i = 1 To Item
  4095.       Tmp2 = cGetSystemDirectory()
  4096.       If (Tmp <> Tmp2) Then Beep
  4097.    Next i
  4098.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  4099.    Label3.Caption = Tmp1
  4100. End Sub
  4101. Private Sub TestGetTimeSeparator()
  4102.    Dim Title      As String
  4103.    Dim Tmp        As String
  4104.    Dim Tmp1       As String
  4105.    Dim Tmp2       As String
  4106.    Dim i          As Integer
  4107.    Dim j          As Integer
  4108.    Tmp = cGetTimeSeparator()
  4109.    Tmp1 = "The following char '" & Tmp & "' is the time separator" & Chr$(13) & Chr$(13)
  4110.    cStartBasisTimer
  4111.    For i = 1 To Item
  4112.       Tmp2 = cGetTimeSeparator()
  4113.       If (Tmp <> Tmp2) Then Beep
  4114.    Next i
  4115.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  4116.    Label3.Caption = Tmp1
  4117. End Sub
  4118. Private Sub TestGetWindowsDirectory()
  4119.    Dim Title      As String
  4120.    Dim Tmp        As String
  4121.    Dim Tmp1       As String
  4122.    Dim Tmp2       As String
  4123.    Dim i          As Integer
  4124.    Dim j          As Integer
  4125.    Tmp = cGetWindowsDirectory()
  4126.    Tmp1 = Tmp & " is the directory for Windows" & Chr$(13) & Chr$(13)
  4127.    cStartBasisTimer
  4128.    For i = 1 To Item
  4129.       Tmp2 = cGetWindowsDirectory()
  4130.       If (Tmp <> Tmp2) Then Beep
  4131.    Next i
  4132.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  4133.    Label3.Caption = Tmp1
  4134. End Sub
  4135. Private Sub TestGiveBitPalindrome()
  4136.    Dim Title      As String
  4137.    Dim Tmp        As String
  4138.    Dim Tmp1       As String
  4139.    Dim Tmp2       As String
  4140.    Dim i          As Integer
  4141.    Dim j          As Integer
  4142.    Title = "The followings chars are Bit Palindrome : " & Chr$(13) & Chr$(13)
  4143.    Tmp1 = Tmp1 & Title & "chr(0) and  " & cBlockCharFromRight(cGiveBitPalindrome(), 1) & Chr$(13) & Chr$(13)
  4144.    cStartBasisTimer
  4145.    For i = 1 To Item
  4146.       Tmp2 = cGiveBitPalindrome()
  4147.    Next i
  4148.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  4149.    Label3.Caption = Tmp1
  4150. End Sub
  4151. Private Sub TestHideAllEditForm()
  4152.    Dim N       As Integer
  4153.    Dim Tmp     As String
  4154.    If (cHideAllEditForm() = True) Then
  4155.       Tmp = "HideAllEditForm SUCCESS"
  4156.    Else
  4157.       Tmp = "HideAllEditForm FAIL"
  4158.    End If
  4159.    Tmp = Tmp & Chr$(13) & "Waiting 2 seconds" & Chr$(13)
  4160.    Label3.Caption = Tmp
  4161.    DoEvents
  4162.    N = cSleep(2000)
  4163.    If (cUnHideAllEditForm() = True) Then
  4164.       Tmp = Tmp & "UnHideAllEditForm SUCCESS"
  4165.    Else
  4166.       Tmp = Tmp & "UnHideAllEditForm FAIL"
  4167.    End If
  4168.    Label3.Caption = Tmp
  4169. End Sub
  4170. Private Sub TestHideDebugForm()
  4171.    Dim N       As Integer
  4172.    Dim Tmp     As String
  4173.    If (cHideDebugForm() = True) Then
  4174.       Tmp = "HideDebugForm SUCCESS"
  4175.    Else
  4176.       Tmp = "HideDebugForm FAIL"
  4177.    End If
  4178.    Tmp = Tmp & Chr$(13) & "Waiting 2 seconds" & Chr$(13)
  4179.    Label3.Caption = Tmp
  4180.    DoEvents
  4181.    N = cSleep(2000)
  4182.    If (cUnHideDebugForm() = True) Then
  4183.       Tmp = Tmp & "UnHideDebugForm SUCCESS"
  4184.    Else
  4185.       Tmp = Tmp & "UnHideDebugForm FAIL"
  4186.    End If
  4187.    Label3.Caption = Tmp
  4188. End Sub
  4189. Private Sub TestHMAL(Management As Integer)
  4190.    Dim Tmp        As String
  4191.    Dim ErrCode    As Integer
  4192.    Dim HMA        As tagHMA
  4193.    HMA.nType = DA_LONG
  4194.    HMA.nIsTyped = False
  4195.    HMA.nRows = 100
  4196.    HMA.nCols = 100
  4197.    HMA.nSheets = 2
  4198.    ErrCode = cHMACreate(HMA)
  4199.    Tmp = Tmp & "ErrCode = " & ErrCode & Chr$(13) & Chr$(13)
  4200.    If (ErrCode = True) Then
  4201.       
  4202.       Tmp = Tmp & "HMA.daSize       = " & HMA.daSize & Chr$(13)
  4203.       Tmp = Tmp & "HMA.nType        = " & HMA.nType & Chr$(13)
  4204.       Tmp = Tmp & "HMA.nIsTyped     = " & HMA.nIsTyped & Chr$(13)
  4205.       Tmp = Tmp & "HMA.nRows        = " & HMA.nRows & Chr$(13)
  4206.       Tmp = Tmp & "HMA.nCols        = " & HMA.nCols & Chr$(13)
  4207.       Tmp = Tmp & "HMA.nSheets      = " & HMA.nSheets & Chr$(13)
  4208.       Tmp = Tmp & "HMA.rHandle      = " & HMA.rHandle & Chr$(13)
  4209.       Tmp = Tmp & "HMA.rElementSize = " & HMA.rElementSize & Chr$(13)
  4210.       Tmp = Tmp & "HMA.rMemorySize  = " & HMA.rMemorySize & Chr$(13)
  4211.       Tmp = Tmp & "HMA.rParts       = " & HMA.rParts & Chr$(13)
  4212.       Tmp = Tmp & "HMA.rRemain      = " & HMA.rRemain & Chr$(13)
  4213.       Tmp = Tmp & "HMA.rSheetSize   = " & HMA.rSheetSize & Chr$(13) & Chr$(13)
  4214.       
  4215.       Call cHMAPut(HMA, 1, 1, 1, 12345)
  4216.       Call cHMAPut(HMA, HMA.nRows, HMA.nCols, 1, 98765)
  4217.       
  4218.       Call cHMAPut(HMA, 1, HMA.nCols, 2, 34567890)
  4219.       Call cHMAPut(HMA, HMA.nRows, 1, 2, 123456789)
  4220.       Tmp = Tmp & "R:1  , C:1  , D:1, Value : " & cHMAGet(HMA, 1, 1, 1) & Chr$(13)
  4221.       Tmp = Tmp & "R:" & HMA.nRows & ", C:" & HMA.nCols & ", D:1, Value : " & cHMAGet(HMA, HMA.nRows, HMA.nCols, 1) & Chr$(13)
  4222.       
  4223.       Tmp = Tmp & "R:1  , C:" & HMA.nCols & ", D:2, Value : " & cHMAGet(HMA, 1, HMA.nCols, 2) & Chr$(13)
  4224.       Tmp = Tmp & "R:" & HMA.nRows & ", C:1  , D:2, Value : " & cHMAGet(HMA, HMA.nRows, 1, 2) & Chr$(13) & Chr$(13)
  4225.       If (Management > 0) Then
  4226.          Select Case Management
  4227.             Case 1         'clear all
  4228.                ErrCode = cHMAClear(HMA)
  4229.             Case 2         'clear sheet 2
  4230.                ErrCode = cHMAClearSheet(HMA, 2)
  4231.             Case 3         'clear last row
  4232.                ErrCode = cHMAClearRow(HMA, HMA.nRows, 1)
  4233.             Case 4         'clear last col
  4234.                ErrCode = cHMAClearCol(HMA, HMA.nCols, 1)
  4235.             Case 5         'clear last row in all sheets
  4236.                ErrCode = cHMAClearRow(HMA, HMA.nRows, -1)
  4237.             Case 6         'clear last col in all sheets
  4238.                ErrCode = cHMAClearCol(HMA, HMA.nCols, -1)
  4239.          End Select
  4240.          Tmp = Tmp & "R:1  , C:1  , D:1, Value : " & cHMAGet(HMA, 1, 1, 1) & Chr$(13)
  4241.          Tmp = Tmp & "R:" & HMA.nRows & ", C:" & HMA.nCols & ", D:1, Value : " & cHMAGet(HMA, HMA.nRows, HMA.nCols, 1) & Chr$(13)
  4242.          
  4243.          Tmp = Tmp & "R:1  , C:" & HMA.nCols & ", D:2, Value : " & cHMAGet(HMA, 1, HMA.nCols, 2) & Chr$(13)
  4244.          Tmp = Tmp & "R:" & HMA.nRows & ", C:1  , D:2, Value : " & cHMAGet(HMA, HMA.nRows, 1, 2) & Chr$(13)
  4245.       End If
  4246.    End If
  4247.    ErrCode = cHMAFree(HMA)
  4248.    Label3.Caption = Tmp
  4249. End Sub
  4250. Private Sub TestHMAStr(Management As Integer)
  4251.    Dim Tmp        As String
  4252.    Dim ErrCode    As Integer
  4253.    Dim HMA        As tagHMA
  4254.    HMA.nType = 50
  4255.    HMA.nIsTyped = False
  4256.    HMA.nRows = 100
  4257.    HMA.nCols = 100
  4258.    HMA.nSheets = 2
  4259.    ErrCode = cHMACreate(HMA)
  4260.    Tmp = Tmp & "ErrCode = " & ErrCode & Chr$(13) & Chr$(13)
  4261.    If (ErrCode = True) Then
  4262.       
  4263.       Tmp = Tmp & "HMA.daSize       = " & HMA.daSize & Chr$(13)
  4264.       Tmp = Tmp & "HMA.nType        = " & HMA.nType & Chr$(13)
  4265.       Tmp = Tmp & "HMA.nIsTyped     = " & HMA.nIsTyped & Chr$(13)
  4266.       Tmp = Tmp & "HMA.nRows        = " & HMA.nRows & Chr$(13)
  4267.       Tmp = Tmp & "HMA.nCols        = " & HMA.nCols & Chr$(13)
  4268.       Tmp = Tmp & "HMA.nSheets      = " & HMA.nSheets & Chr$(13)
  4269.       Tmp = Tmp & "HMA.rHandle      = " & HMA.rHandle & Chr$(13)
  4270.       Tmp = Tmp & "HMA.rElementSize = " & HMA.rElementSize & Chr$(13)
  4271.       Tmp = Tmp & "HMA.rMemorySize  = " & HMA.rMemorySize & Chr$(13)
  4272.       Tmp = Tmp & "HMA.rParts       = " & HMA.rParts & Chr$(13)
  4273.       Tmp = Tmp & "HMA.rRemain      = " & HMA.rRemain & Chr$(13)
  4274.       Tmp = Tmp & "HMA.rSheetSize   = " & HMA.rSheetSize & Chr$(13) & Chr$(13)
  4275.       
  4276.       Call cHMAPut(HMA, 1, 1, 1, "D:1, ABCDEFGHIJ")
  4277.       Call cHMAPut(HMA, HMA.nRows, HMA.nCols, 1, "D:1, oprqstuvwxyz")
  4278.       
  4279.       Call cHMAPut(HMA, 1, HMA.nCols, 2, "D:2, 0987654321")
  4280.       Call cHMAPut(HMA, HMA.nRows, 1, 2, "D:2, 12345ABCDE")
  4281.       Tmp = Tmp & "R:1  , C:1  , D:1, Value : " & cHMAGet(HMA, 1, 1, 1) & Chr$(13)
  4282.       Tmp = Tmp & "R:" & HMA.nRows & ", C:" & HMA.nCols & ", D:1, Value : " & cHMAGet(HMA, HMA.nRows, HMA.nCols, 1) & Chr$(13)
  4283.       
  4284.       Tmp = Tmp & "R:1  , C:" & HMA.nCols & ", D:2, Value : " & cHMAGet(HMA, 1, HMA.nCols, 2) & Chr$(13)
  4285.       Tmp = Tmp & "R:" & HMA.nRows & ", C:1  , D:2, Value : " & cHMAGet(HMA, HMA.nRows, 1, 2) & Chr$(13) & Chr$(13)
  4286.       If (Management > 0) Then
  4287.          Select Case Management
  4288.             Case 1         'clear all
  4289.                ErrCode = cHMAClear(HMA)
  4290.             Case 2         'clear sheet 2
  4291.                ErrCode = cHMAClearSheet(HMA, 2)
  4292.             Case 3         'clear last row
  4293.                ErrCode = cHMAClearRow(HMA, HMA.nRows, 1)
  4294.             Case 4         'clear last col
  4295.                ErrCode = cHMAClearCol(HMA, HMA.nCols, 1)
  4296.             Case 5         'clear last row in all sheets
  4297.                ErrCode = cHMAClearRow(HMA, HMA.nRows, -1)
  4298.             Case 6         'clear last col in all sheets
  4299.                ErrCode = cHMAClearCol(HMA, HMA.nCols, -1)
  4300.          End Select
  4301.          Tmp = Tmp & "R:1  , C:1  , D:1, Value : " & cHMAGet(HMA, 1, 1, 1) & Chr$(13)
  4302.          Tmp = Tmp & "R:" & HMA.nRows & ", C:" & HMA.nCols & ", D:1, Value : " & cHMAGet(HMA, HMA.nRows, HMA.nCols, 1) & Chr$(13)
  4303.          
  4304.          Tmp = Tmp & "R:1  , C:" & HMA.nCols & ", D:2, Value : " & cHMAGet(HMA, 1, HMA.nCols, 2) & Chr$(13)
  4305.          Tmp = Tmp & "R:" & HMA.nRows & ", C:1  , D:2, Value : " & cHMAGet(HMA, HMA.nRows, 1, 2) & Chr$(13)
  4306.       End If
  4307.    End If
  4308.    ErrCode = cHMAFree(HMA)
  4309.    Label3.Caption = Tmp
  4310. End Sub
  4311. Private Sub TestHMAType(Management As Integer)
  4312.    Dim Tmp        As String
  4313.    Dim ErrCode    As Integer
  4314.    Dim HMA        As tagHMA
  4315.    Dim TE         As tagTASKENTRY
  4316.    HMA.nType = Len(TE)
  4317.    HMA.nIsTyped = True
  4318.    HMA.nRows = 100
  4319.    HMA.nCols = 100
  4320.    HMA.nSheets = 2
  4321.    ErrCode = cHMACreate(HMA)
  4322.    Tmp = Tmp & "ErrCode = " & ErrCode & Chr$(13) & Chr$(13)
  4323.    If (ErrCode = True) Then
  4324.       
  4325.       Tmp = Tmp & "HMA.daSize       = " & HMA.daSize & Chr$(13)
  4326.       Tmp = Tmp & "HMA.nType        = " & HMA.nType & Chr$(13)
  4327.       Tmp = Tmp & "HMA.nIsTyped     = " & HMA.nIsTyped & Chr$(13)
  4328.       Tmp = Tmp & "HMA.nRows        = " & HMA.nRows & Chr$(13)
  4329.       Tmp = Tmp & "HMA.nCols        = " & HMA.nCols & Chr$(13)
  4330.       Tmp = Tmp & "HMA.nSheets      = " & HMA.nSheets & Chr$(13)
  4331.       Tmp = Tmp & "HMA.rHandle      = " & HMA.rHandle & Chr$(13)
  4332.       Tmp = Tmp & "HMA.rElementSize = " & HMA.rElementSize & Chr$(13)
  4333.       Tmp = Tmp & "HMA.rMemorySize  = " & HMA.rMemorySize & Chr$(13)
  4334.       Tmp = Tmp & "HMA.rParts       = " & HMA.rParts & Chr$(13)
  4335.       Tmp = Tmp & "HMA.rRemain      = " & HMA.rRemain & Chr$(13)
  4336.       Tmp = Tmp & "HMA.rSheetSize   = " & HMA.rSheetSize & Chr$(13) & Chr$(13)
  4337.       ErrCode = cTasks(TE, True)
  4338.       Call cHMAPutType(HMA, 1, 1, 1, TE)
  4339.       ErrCode = cTasks(TE, False)
  4340.       Call cHMAPutType(HMA, HMA.nRows, HMA.nCols, 1, TE)
  4341.       
  4342.       ErrCode = cTasks(TE, False)
  4343.       Call cHMAPutType(HMA, 1, HMA.nCols, 2, TE)
  4344.       ErrCode = cTasks(TE, False)
  4345.       Call cHMAPutType(HMA, HMA.nRows, 1, 2, TE)
  4346.       
  4347.       Call cHMAGetType(HMA, 1, 1, 1, TE)
  4348.       Tmp = Tmp & "R:1  , C:1  , D:1, TE.szModule : " & cCompress(TE.szModule) & Chr$(13)
  4349.       Call cHMAGetType(HMA, HMA.nRows, HMA.nCols, 1, TE)
  4350.       Tmp = Tmp & "R:" & HMA.nRows & ", C:" & HMA.nCols & ", D:1, TE.szModule : " & cCompress(TE.szModule) & Chr$(13)
  4351.       
  4352.       Call cHMAGetType(HMA, 1, HMA.nCols, 2, TE)
  4353.       Tmp = Tmp & "R:1  , C:" & HMA.nCols & ", D:2, TE.szModule : " & cCompress(TE.szModule) & Chr$(13)
  4354.       Call cHMAGetType(HMA, HMA.nRows, 1, 2, TE)
  4355.       Tmp = Tmp & "R:" & HMA.nRows & ", C:1  , D:2, TE.szModule : " & cCompress(TE.szModule) & Chr$(13) & Chr$(13)
  4356.       If (Management > 0) Then
  4357.          Select Case Management
  4358.             Case 1         'clear all
  4359.                ErrCode = cHMAClear(HMA)
  4360.             Case 2         'clear sheet 2
  4361.                ErrCode = cHMAClearSheet(HMA, 2)
  4362.             Case 3         'clear last row
  4363.                ErrCode = cHMAClearRow(HMA, HMA.nRows, 1)
  4364.             Case 4         'clear last col
  4365.                ErrCode = cHMAClearCol(HMA, HMA.nCols, 1)
  4366.             Case 5         'clear last row in all sheets
  4367.                ErrCode = cHMAClearRow(HMA, HMA.nRows, -1)
  4368.             Case 6         'clear last col in all sheets
  4369.                ErrCode = cHMAClearCol(HMA, HMA.nCols, -1)
  4370.          End Select
  4371.          Call cHMAGetType(HMA, 1, 1, 1, TE)
  4372.          Tmp = Tmp & "R:1  , C:1  , D:1, TE.szModule : " & cCompress(TE.szModule) & Chr$(13)
  4373.          Call cHMAGetType(HMA, HMA.nRows, HMA.nCols, 1, TE)
  4374.          Tmp = Tmp & "R:" & HMA.nRows & ", C:" & HMA.nCols & ", D:1, TE.szModule : " & cCompress(TE.szModule) & Chr$(13)
  4375.       
  4376.          Call cHMAGetType(HMA, 1, HMA.nCols, 2, TE)
  4377.          Tmp = Tmp & "R:1  , C:" & HMA.nCols & ", D:2, TE.szModule : " & cCompress(TE.szModule) & Chr$(13)
  4378.          Call cHMAGetType(HMA, HMA.nRows, 1, 2, TE)
  4379.          Tmp = Tmp & "R:" & HMA.nRows & ", C:1  , D:2, TE.szModule : " & cCompress(TE.szModule) & Chr$(13)
  4380.       End If
  4381.    End If
  4382.    ErrCode = cHMAFree(HMA)
  4383.    Label3.Caption = Tmp
  4384. End Sub
  4385. Private Sub TestHourTo()
  4386.    Dim Title      As String
  4387.    Dim Tmp        As String
  4388.    Dim Tmp1       As String
  4389.    Dim Tmp2       As String
  4390.    Dim i          As Integer
  4391.    Dim j          As Integer
  4392.    Tmp1 = "The time 10:00 is " & cHourTo("10:00") & " minutes" & Chr$(13)
  4393.    Tmp1 = Tmp1 & "The time 23:58 is " & cHourTo("23:58") & " minutes" & Chr$(13)
  4394.    Tmp1 = Tmp1 & "The time 7:36 is " & cHourTo("7:36") & " minutes" & Chr$(13)
  4395.    Tmp1 = Tmp1 & "The time :24 is " & cHourTo(":24") & " minutes" & Chr$(13)
  4396.    Tmp1 = Tmp1 & "The time :4 is " & cHourTo(":4") & " minutes" & Chr$(13)
  4397.    Tmp1 = Tmp1 & "The time : is " & cHourTo(":") & " minutes" & Chr$(13) & Chr$(13)
  4398.    Tmp1 = Tmp1 & "The time -10:00 is " & cHourTo("-10:00") & " minutes" & Chr$(13)
  4399.    Tmp1 = Tmp1 & "The time -23:58 is " & cHourTo("-23:58") & " minutes" & Chr$(13)
  4400.    Tmp1 = Tmp1 & "The time -7:36 is " & cHourTo("-7:36") & " minutes" & Chr$(13)
  4401.    Tmp1 = Tmp1 & "The time -:24 is " & cHourTo("-:24") & " minutes" & Chr$(13)
  4402.    Tmp1 = Tmp1 & "The time -:4 is " & cHourTo("-:4") & " minutes" & Chr$(13)
  4403.    Tmp1 = Tmp1 & "The time -: is " & cHourTo("-:") & " minutes" & Chr$(13) & Chr$(13)
  4404.    cStartBasisTimer
  4405.    For i = 1 To Item
  4406.       j = cHourTo("23:59")
  4407.    Next i
  4408.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  4409.    Label3.Caption = Tmp1
  4410. End Sub
  4411. Private Sub TestInpBox()
  4412.    Dim i       As Integer
  4413.    Dim N       As Integer
  4414.    Dim Tmp     As String
  4415.    Dim Tmp1    As String
  4416.    Tmp = "'T2WIN-16'" & Chr$(13) & Chr$(13)
  4417.    Tmp = Tmp & " is a powerfull data link library for using with Visual Basic 3.0 for Windows." & Chr$(13)
  4418.    Tmp = Tmp & "It looks very better than the standard message box." & Chr$(13)
  4419.    Tmp = Tmp & "All push buttons are displayed in French." & Chr$(13)
  4420.    Tmp = Tmp & "The system menu is also in French."
  4421.    Tmp1 = cLngInpBox(LNG_FRENCH, Tmp, "Input Box in French", "" & Text1.Text)
  4422.    Tmp1 = InputBox$("This is a standard input box", "VB INPUT BOX", "" & Text1.Text)
  4423. End Sub
  4424. Private Sub TestInsertBlocks()
  4425.    Dim Title      As String
  4426.    Dim Tmp        As String
  4427.    Dim Tmp1       As String
  4428.    Dim Tmp2       As String
  4429.    Dim i          As Integer
  4430.    Dim j          As Integer
  4431.    Tmp = "A~BC~DEF~GHIJ~"
  4432.    Title = "Insert 'a','bc','def','ghij' into [" & Tmp & "] is " & Chr$(13) & Chr$(13)
  4433.    Tmp1 = Title & cInsertBlocks(Tmp, "a~bc~def~ghij") & Chr$(13) & Chr$(13)
  4434.    Title = "Insert '' into [" & Tmp & "] is " & Chr$(13) & Chr$(13)
  4435.    Tmp1 = Tmp1 & Title & cInsertBlocks(Tmp, "") & Chr$(13) & Chr$(13)
  4436.    cStartBasisTimer
  4437.    For i = 1 To Item
  4438.       Tmp2 = cInsertBlocks(Tmp, "a")
  4439.    Next i
  4440.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  4441.    Label3.Caption = Tmp1
  4442. End Sub
  4443. Private Sub TestInsertBlocksBy()
  4444.    Dim Title      As String
  4445.    Dim Tmp        As String
  4446.    Dim Tmp1       As String
  4447.    Dim Tmp2       As String
  4448.    Dim i          As Integer
  4449.    Dim j          As Integer
  4450.    Tmp = Text1.Text
  4451.    Title = "Insert 'a','bc','def','ghij' into [" & Tmp & "] is " & Chr$(13) & Chr$(13)
  4452.    Tmp1 = Title & cInsertBlocksBy(Tmp, "a/bc/def/ghij", "/") & Chr$(13) & Chr$(13)
  4453.    Title = "Insert '' into [" & Tmp & "] is " & Chr$(13) & Chr$(13)
  4454.    Tmp1 = Tmp1 & Title & cInsertBlocksBy(Tmp, "", "/") & Chr$(13) & Chr$(13)
  4455.    cStartBasisTimer
  4456.    For i = 1 To Item
  4457.       Tmp2 = cInsertBlocksBy(Tmp, "a/bc/def/ghij", "/")
  4458.    Next i
  4459.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  4460.    Label3.Caption = Tmp1
  4461. End Sub
  4462. Private Sub TestInsertChars()
  4463.    Dim Title      As String
  4464.    Dim Tmp        As String
  4465.    Dim Tmp1       As String
  4466.    Dim Tmp2       As String
  4467.    Dim i          As Integer
  4468.    Dim j          As Integer
  4469.    Tmp = Text1.Text
  4470.    Title = "Insert 'a' from 7 char into [" & Tmp & "] is " & Chr$(13) & Chr$(13)
  4471.    Tmp1 = Title & cInsertChars(Tmp, 7, "a") & Chr$(13) & Chr$(13)
  4472.    Title = "Insert '10$' from 2 char into [" & Tmp & "] is " & Chr$(13) & Chr$(13)
  4473.    Tmp1 = Tmp1 & Title & cInsertChars(Tmp, 2, "10$") & Chr$(13) & Chr$(13)
  4474.    Title = "Insert '@' from 21 char into [" & Tmp & "] is " & Chr$(13) & Chr$(13)
  4475.    Tmp1 = Tmp1 & Title & cInsertChars(Tmp, 21, "@") & Chr$(13) & Chr$(13)
  4476.    cStartBasisTimer
  4477.    For i = 1 To Item
  4478.       Tmp2 = cInsertChars(Tmp, 1, "a")
  4479.    Next i
  4480.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  4481.    Label3.Caption = Tmp1
  4482. End Sub
  4483. Private Sub TestIntoBalance()
  4484.    Dim Title      As String
  4485.    Dim Tmp        As String
  4486.    Dim Tmp1       As String
  4487.    Dim Tmp2       As String
  4488.    Dim i          As Integer
  4489.    Dim j          As Integer
  4490.    j = 1234
  4491.    Title = "Convert minutes into balance : " & Chr$(13) & Chr$(13)
  4492.    Tmp1 = Title & Chr$(13)
  4493.    For i = 0 To 11
  4494.       Tmp1 = Tmp1 & (j + i) & " { " & cIntoBalanceFill(j + i) & " }" & Chr$(9) & Chr$(9)
  4495.       Tmp1 = Tmp1 & "{ " & cIntoBalance(j + i) & " }" & Chr$(13)
  4496.    Next i
  4497.    Tmp1 = Tmp1 & Chr$(13)
  4498.    cStartBasisTimer
  4499.    For i = 1 To Item
  4500.       Tmp2 = cIntoBalanceFill(i)
  4501.    Next i
  4502.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  4503.    Label3.Caption = Tmp1
  4504. End Sub
  4505. Private Sub TestIntoFixHour()
  4506.    Dim Title      As String
  4507.    Dim Tmp        As String
  4508.    Dim Tmp1       As String
  4509.    Dim Tmp2       As String
  4510.    Dim i          As Integer
  4511.    Dim j          As Integer
  4512.    j = 12345
  4513.    Title = "Convert " & j & " minutes into fixed hour : " & Chr$(13) & Chr$(13)
  4514.    Tmp1 = Title & Chr$(13)
  4515.    For i = 0 To 11
  4516.       Tmp1 = Tmp1 & "{ " & cIntoFixHour(j, i, True, False) & " }" & Chr$(9) & Chr$(9)
  4517.       Tmp1 = Tmp1 & "{ " & cIntoFixHour(j, i, False, False) & " }" & Chr$(13)
  4518.    Next i
  4519.    Tmp1 = Tmp1 & Chr$(13)
  4520.    cStartBasisTimer
  4521.    For i = 1 To Item
  4522.       Tmp2 = cIntoFixHour(12345, 8, True, False)
  4523.    Next i
  4524.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  4525.    Label3.Caption = Tmp1
  4526. End Sub
  4527. Private Sub TestIntoHour()
  4528.    Dim Title      As String
  4529.    Dim Tmp        As String
  4530.    Dim Tmp1       As String
  4531.    Dim Tmp2       As String
  4532.    Dim i          As Integer
  4533.    Dim j          As Integer
  4534.    j = 1234
  4535.    Title = "Convert minutes into hour : " & Chr$(13) & Chr$(13)
  4536.    Tmp1 = Title & Chr$(13)
  4537.    For i = 0 To 11
  4538.       Tmp1 = Tmp1 & (j + i) & " { " & cIntoHour(j + i) & " }" & Chr$(13)
  4539.    Next i
  4540.    Tmp1 = Tmp1 & Chr$(13)
  4541.    cStartBasisTimer
  4542.    For i = 1 To Item
  4543.       Tmp2 = cIntoHour(i)
  4544.    Next i
  4545.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  4546.    Label3.Caption = Tmp1
  4547. End Sub
  4548. Private Sub TestIntoVarHour()
  4549.    Dim Title      As String
  4550.    Dim Tmp        As String
  4551.    Dim Tmp1       As String
  4552.    Dim Tmp2       As String
  4553.    Dim i          As Integer
  4554.    Dim j          As Integer
  4555.    Dim k          As Long
  4556.                             
  4557.    Title = "Convert minutes into variable hour : " & Chr$(13) & Chr$(13)
  4558.    Tmp1 = Title & Chr$(13)
  4559.    For i = 1 To 9
  4560.       Tmp2 = Tmp2 & (10 - i)
  4561.       Tmp1 = Tmp1 & Tmp2 & " { " & cIntoVarHour(Val(Tmp2)) & " }" & Chr$(13)
  4562.    Next i
  4563.    Tmp1 = Tmp1 & Chr$(13)
  4564.    cStartBasisTimer
  4565.    For i = 1 To Item
  4566.       Tmp2 = cIntoVarHour(123456789)
  4567.    Next i
  4568.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  4569.    Label3.Caption = Tmp1
  4570. End Sub
  4571. Private Sub TestIsBitPalindrome()
  4572.    Dim Title      As String
  4573.    Dim Tmp        As String
  4574.    Dim Tmp1       As String
  4575.    Dim Tmp2       As String
  4576.    Dim i          As Integer
  4577.    Dim j          As Integer
  4578.    Tmp = Text1.Text
  4579.    Title = "[" & Tmp & "] is "
  4580.    Tmp1 = Title & IIf(cIsPalindrome(Tmp), "a Bit Palindrome", " not a Bit Palindrome") & Chr$(13) & Chr$(13)
  4581.    For i = 1 To 255
  4582.       If cIsBitPalindrome(Chr$(i)) Then Tmp2 = Tmp2 + Chr$(i) & "(" & i & ")" & Chr$(9)
  4583.    Next i
  4584.    Title = "The followings chars are Bit Palindrome : " & Chr$(13) & Chr$(13)
  4585.    Tmp1 = Tmp1 & Title & Tmp2 & Chr$(13) & Chr$(13)
  4586.    cStartBasisTimer
  4587.    For i = 1 To Item
  4588.       j = cIsPalindrome(Tmp)
  4589.    Next i
  4590.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  4591.    Label3.Caption = Tmp1
  4592. End Sub
  4593. Private Sub TestIsFileX()
  4594.    Dim Title      As String
  4595.    Dim Tmp        As String
  4596.    Dim Tmp1       As String
  4597.    Dim Tmp2       As String
  4598.    Dim i          As Integer
  4599.    Dim j          As Integer
  4600.    Tmp = cFilesInDirectory("*.*", True)
  4601.    Title = "[" & Tmp & "] is "
  4602.    Tmp1 = Title & Chr$(13) & Chr$(13)
  4603.    Tmp1 = Tmp1 & IIf(cIsFilenameValid(Tmp), " a good filename", " is not a good filename") & Chr$(13)
  4604.    Tmp1 = Tmp1 & IIf(cIsFileArchive(Tmp), " archive", " not archive") & Chr$(13)
  4605.    Tmp1 = Tmp1 & IIf(cIsFileHidden(Tmp), " hidden", " not hidden") & Chr$(13)
  4606.    Tmp1 = Tmp1 & IIf(cIsFileNormal(Tmp), " normal", " not normal") & Chr$(13)
  4607.    Tmp1 = Tmp1 & IIf(cIsFileReadOnly(Tmp), " read-only", " not read-only") & Chr$(13)
  4608.    Tmp1 = Tmp1 & IIf(cIsFileSubDir(Tmp), " sub-directory", " not sub-directory") & Chr$(13)
  4609.    Tmp1 = Tmp1 & IIf(cIsFileSystem(Tmp), " system", " not system") & Chr$(13)
  4610.    Tmp1 = Tmp1 & IIf(cIsFileVolId(Tmp), " volume-id", " not volume-id") & Chr$(13) & Chr$(13)
  4611.    cStartBasisTimer
  4612.    For i = 1 To Item
  4613.       j = cIsFileArchive(Tmp)
  4614.    Next i
  4615.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  4616.    Label3.Caption = Tmp1
  4617. End Sub
  4618. Private Sub TestIsPalindrome()
  4619.    Dim Title      As String
  4620.    Dim Tmp        As String
  4621.    Dim Tmp1       As String
  4622.    Dim Tmp2       As String
  4623.    Dim i          As Integer
  4624.    Dim j          As Integer
  4625.    Tmp = Text1.Text
  4626.    Title = "[" & Tmp & "] is "
  4627.    Tmp1 = Title & IIf(cIsPalindrome(Tmp), "a Palindrome", " not a Palindrome") & Chr$(13) & Chr$(13)
  4628.    cStartBasisTimer
  4629.    For i = 1 To Item
  4630.       j = cIsPalindrome(Tmp)
  4631.    Next i
  4632.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  4633.    Label3.Caption = Tmp1
  4634. End Sub
  4635. Private Sub TestIsX()
  4636.    Dim Title      As String
  4637.    Dim Tmp        As String
  4638.    Dim Tmp1       As String
  4639.    Dim Tmp2       As String
  4640.    Dim i          As Integer
  4641.    Dim j          As Integer
  4642.    Tmp = Text1.Text
  4643.    Tmp1 = "[" & Tmp & "] is " & Chr$(13)
  4644.    Tmp1 = Tmp1 & IIf(cIsDigit(Tmp), "Digit", " not Digit") & Chr$(13)
  4645.    Tmp1 = Tmp1 & IIf(cIsXdigit(Tmp), "XDigit", " not XDigit") & Chr$(13)
  4646.    Tmp1 = Tmp1 & IIf(cIsAlpha(Tmp), "Alpha", " not Alpha") & Chr$(13)
  4647.    Tmp1 = Tmp1 & IIf(cIsLower(Tmp), "Lower", " not Lower") & Chr$(13)
  4648.    Tmp1 = Tmp1 & IIf(cIsUpper(Tmp), "Upper", " not Upper") & Chr$(13)
  4649.    Tmp1 = Tmp1 & IIf(cIsAlnum(Tmp), "Alnum", " not Alnum") & Chr$(13)
  4650.    Tmp1 = Tmp1 & IIf(cIsUpper(Tmp), "Upper", " not Upper") & Chr$(13)
  4651.    Tmp1 = Tmp1 & IIf(cIsSpace(Tmp), "Space", " not Space") & Chr$(13)
  4652.    Tmp1 = Tmp1 & IIf(cIsPunct(Tmp), "Punct", " not Punct") & Chr$(13)
  4653.    Tmp1 = Tmp1 & IIf(cIsAscii(Tmp), "Ascii", " not Ascii") & Chr$(13)
  4654.    Tmp1 = Tmp1 & IIf(cIsCsym(Tmp), "Csym", " not Csym") & Chr$(13)
  4655.    Tmp1 = Tmp1 & IIf(cIsCsymf(Tmp), "Csymf", " not Csymf") & Chr$(13)
  4656.    Tmp1 = Tmp1 & IIf(cIsISBN(Tmp), "ISBN", " not ISBN") & Chr$(13) & Chr$(13)
  4657.    cStartBasisTimer
  4658.    For i = 1 To Item
  4659.       j = cIsDigit(Tmp)
  4660.    Next i
  4661.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  4662.    Label3.Caption = Tmp1
  4663. End Sub
  4664. Private Sub TestKillDir()
  4665.    Dim Title      As String
  4666.    Dim Tmp        As String
  4667.    Dim Tmp1       As String
  4668.    Dim Tmp2       As String
  4669.    Dim i          As Integer
  4670.    Dim j          As Integer
  4671.    j = cMakeDir("c:\testing")
  4672.    Tmp1 = "Directory 'TESTING' " & IIf(cKillDir("c:\testing") = True, "deleted", "not deleted") & Chr$(13) & Chr$(13)
  4673.    cStartBasisTimer
  4674.    For i = 1 To ItemFile
  4675.       j = cKillDir("c:\testing")
  4676.    Next i
  4677.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  4678.    Label3.Caption = Tmp1
  4679. End Sub
  4680. Private Sub TestKillFile()
  4681.    Dim Title      As String
  4682.    Dim Tmp        As String
  4683.    Dim Tmp1       As String
  4684.    Dim Tmp2       As String
  4685.    Dim i          As Integer
  4686.    Dim j          As Integer
  4687.    Close #1
  4688.    Open "XY~YX~XY.~~~" For Output As #1
  4689.    Print #1, "this is a test";
  4690.    Close #1
  4691.    Tmp1 = "File XY~YX~XY.~~~ " & IIf(cKillFile("XY~YX~XY.~~~") = True, "destroyed", "not destroyed") & Chr$(13) & Chr$(13)
  4692.    cStartBasisTimer
  4693.    For i = 1 To Item
  4694.       j = cKillFile("XY~YX~XY.~~~")
  4695.    Next i
  4696.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  4697.    Label3.Caption = Tmp1
  4698. End Sub
  4699. Private Sub TestKillFiles()
  4700.    Dim Title      As String
  4701.    Dim Tmp        As String
  4702.    Dim Tmp1       As String
  4703.    Dim Tmp2       As String
  4704.    Dim i          As Integer
  4705.    Dim j          As Integer
  4706.    For i = 1 To 34
  4707.       Close #1
  4708.       Open "C:\XY~YX~XY." & i For Output As #1
  4709.       Print #1, "this is a test";
  4710.       Close #1
  4711.    Next i
  4712.    Tmp1 = "Number of killed Files from 'C:XY~YX~XY.1' to 'C:XY~YX~XY.34' is " & cKillFiles("C:\XY~YX~XY.*") & Chr$(13) & Chr$(13)
  4713.    cStartBasisTimer
  4714.    For i = 1 To ItemFile
  4715.       j = cKillFiles("C:\XY~YX~XY.~~~")
  4716.    Next i
  4717.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  4718.    Label3.Caption = Tmp1
  4719. End Sub
  4720. Private Sub TestLanguage()
  4721.    Dim Title      As String
  4722.    Dim Tmp        As String
  4723.    Dim Tmp1       As String
  4724.    Dim Tmp2       As String
  4725.    Dim i          As Integer
  4726.    Dim j          As Integer
  4727.    Dim k          As Long
  4728.    Dim ErrCode    As Integer
  4729.    ReDim Lng(LNG_FRENCH To LNG_POLISH)
  4730.    k = Int(Now)
  4731.    Lng(LNG_FRENCH) = "LNG_FRENCH"
  4732.    Lng(LNG_DUTCH) = "LNG_DUTCH"
  4733.    Lng(LNG_GERMAN) = "LNG_GERMAN"
  4734.    Lng(LNG_ENGLISH) = "LNG_ENGLISH"
  4735.    Lng(LNG_ITALIAN) = "LNG_ITALIAN"
  4736.    Lng(LNG_SPANISH) = "LNG_SPANISH"
  4737.    Lng(LNG_CATALAN) = "LNG_CATALAN"
  4738.    Lng(LNG_POLISH) = "LNG_POLISH"
  4739.    Tmp1 = ""
  4740.    For i = LNG_FRENCH To LNG_POLISH
  4741.       Tmp1 = Tmp1 + Lng(i) + " : " + cGetLongDay(i, WeekDay(k)) & " " & Day(k) & " " & cGetLongMonth(i, Month(k)) & " " & Year(k) & Chr$(13)
  4742.    Next i
  4743.    Tmp1 = Tmp1 + Chr$(13)
  4744.    For i = LNG_FRENCH To LNG_POLISH
  4745.       Tmp1 = Tmp1 + Lng(i) + " : " + cGetShortDay(i, WeekDay(k)) & " " & Day(k) & " " & cGetShortMonth(i, Month(k)) & " " & Year(k) & Chr$(13)
  4746.    Next i
  4747.    Tmp1 = Tmp1 + Chr$(13)
  4748.    cStartBasisTimer
  4749.    For i = 1 To Item
  4750.       Tmp = cGetLongMonth(LNG_FRENCH, 12)
  4751.    Next i
  4752.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  4753.    Label3.Caption = Tmp1
  4754. End Sub
  4755. Private Sub TestLrc()
  4756.    Dim Title      As String
  4757.    Dim Tmp        As String
  4758.    Dim Tmp1       As String
  4759.    Dim Tmp2       As String
  4760.    Dim i          As Integer
  4761.    Dim j          As Integer
  4762.    Tmp = Chr$(2) & "0a12721536"
  4763.    Tmp1 = "Lrc for [" & Tmp & "] is " & cLrc(Tmp) & Chr$(13) & Chr$(13)
  4764.    cStartBasisTimer
  4765.    For i = 1 To Item
  4766.       Tmp2 = cLrc(Tmp)
  4767.    Next i
  4768.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  4769.    Label3.Caption = Tmp1
  4770. End Sub
  4771. Private Sub TestMakeDir()
  4772.    Dim Title      As String
  4773.    Dim Tmp        As String
  4774.    Dim Tmp1       As String
  4775.    Dim Tmp2       As String
  4776.    Dim i          As Integer
  4777.    Dim j          As Integer
  4778.    j = cKillDir("testing")
  4779.    Tmp1 = "Directory 'TESTING' " & IIf(cMakeDir("testing") = True, "created", "not created") & Chr$(13) & Chr$(13)
  4780.    cStartBasisTimer
  4781.    For i = 1 To ItemFile
  4782.       j = cMakeDir("testing")
  4783.    Next i
  4784.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  4785.    Label3.Caption = Tmp1
  4786. End Sub
  4787. Private Sub TestMakePath()
  4788.    Dim Title      As String
  4789.    Dim Tmp        As String
  4790.    Dim Tmp1       As String
  4791.    Dim Tmp2       As String
  4792.    Dim Tmp3       As String
  4793.    Dim i          As Integer
  4794.    Dim N          As Integer
  4795.    Dim j          As Long
  4796.    Dim SPLITPATH  As tagSPLITPATH
  4797.    Tmp1 = ""
  4798.    Tmp = cMakePath("c", "tmp", "test", "dat")
  4799.    Tmp1 = Tmp1 & "Make Path of (c,tmp,test,dat) is '" & Tmp & "'" & Chr$(13) & Chr$(13)
  4800.    Tmp1 = Tmp1 & "Split Path '" & Tmp & "' into four components is :" & Chr$(13) & Chr$(13)
  4801.    N = cSplitPath(Tmp, SPLITPATH)
  4802.    Tmp1 = Tmp1 & Space$(3) & SPLITPATH.nDrive & Chr$(13)
  4803.    Tmp1 = Tmp1 & Space$(3) & SPLITPATH.nDir & Chr$(13)
  4804.    Tmp1 = Tmp1 & Space$(3) & SPLITPATH.nName & Chr$(13)
  4805.    Tmp1 = Tmp1 & Space$(3) & SPLITPATH.nExt & Chr$(13) & Chr$(13)
  4806.    cStartBasisTimer
  4807.    For i = 1 To Item
  4808.       Tmp = cMakePath("c", "tmp", "test", "dat")
  4809.    Next i
  4810.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  4811.    Label3.Caption = Tmp1
  4812. End Sub
  4813. Private Sub TestMatrixAdd()
  4814.    Dim Tmp1       As String
  4815.    Dim TmpA       As String
  4816.    Dim TmpB       As String
  4817.    Dim TmpC       As String
  4818.    Dim i          As Integer
  4819.    Dim j          As Integer
  4820.    ReDim ArrayA(1 To 3, 1 To 3) As Double
  4821.    ReDim ArrayB(1 To 3, 1 To 3) As Double
  4822.    ReDim ArrayC(1 To 3, 1 To 3) As Double
  4823.    Randomize Timer
  4824.    For i = 1 To 3
  4825.       For j = 1 To 3
  4826.          ArrayA(i, j) = Int(RandI * Rnd(1))
  4827.          ArrayB(i, j) = Int(RandI * Rnd(1))
  4828.          ArrayC(i, j) = 0
  4829.          TmpA = TmpA + Format$(ArrayA(i, j), "00000  ")
  4830.          TmpB = TmpB + Format$(ArrayB(i, j), "00000  ")
  4831.       Next j
  4832.       TmpA = TmpA + Chr$(13)
  4833.       TmpB = TmpB + Chr$(13)
  4834.    Next i
  4835.    Call cMatrixAdd(3, ArrayA(), ArrayB(), ArrayC())
  4836.    For i = 1 To 3
  4837.       For j = 1 To 3
  4838.          TmpC = TmpC + Format$(ArrayC(i, j), "00000  ")
  4839.       Next j
  4840.       TmpC = TmpC + Chr$(13)
  4841.    Next i
  4842.    Tmp1 = Tmp1 & "First array (A) is " & Chr$(13) & Chr$(13) & TmpA & Chr$(13)
  4843.    Tmp1 = Tmp1 & "Second array (B) is " & Chr$(13) & Chr$(13) & TmpB & Chr$(13)
  4844.    Tmp1 = Tmp1 & "The sum (A) + (B) = (C) is " & Chr$(13) & Chr$(13) & TmpC & Chr$(13)
  4845.    cStartBasisTimer
  4846.    For i = 1 To ItemFile
  4847.       Call cMatrixAdd(3, ArrayA(), ArrayB(), ArrayC())
  4848.    Next i
  4849.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  4850.    Label3.Caption = Tmp1
  4851. End Sub
  4852. Private Sub TestMatrixCompare()
  4853.    Dim Tmp1       As String
  4854.    Dim TmpA       As String
  4855.    Dim TmpC       As String
  4856.    Dim i          As Integer
  4857.    Dim j          As Integer
  4858.    Dim Idem       As Integer
  4859.    ReDim ArrayA(1 To 3, 1 To 3) As Double
  4860.    ReDim ArrayC(1 To 3, 1 To 3) As Double
  4861.    Randomize Timer
  4862.    For i = 1 To 3
  4863.       For j = 1 To 3
  4864.          ArrayA(i, j) = Int(RandI * Rnd(1))
  4865.          ArrayC(i, j) = Int(RandI * Rnd(1))
  4866.          TmpA = TmpA + Format$(ArrayA(i, j), "00000  ")
  4867.          TmpC = TmpC + Format$(ArrayC(i, j), "00000  ")
  4868.       Next j
  4869.       TmpA = TmpA + Chr$(13)
  4870.       TmpC = TmpC + Chr$(13)
  4871.    Next i
  4872.    Idem = cMatrixCompare(3, ArrayA(), ArrayC())
  4873.    Tmp1 = Tmp1 & "First array (A) is " & Chr$(13) & Chr$(13) & TmpA & Chr$(13)
  4874.    Tmp1 = Tmp1 & "Second array (C) is " & Chr$(13) & Chr$(13) & TmpC & Chr$(13)
  4875.    Tmp1 = Tmp1 & "Compare of (A) = (C) is " & Idem & Chr$(13) & Chr$(13)
  4876.    TmpA = ""
  4877.    TmpC = ""
  4878.    For i = 1 To 3
  4879.       For j = 1 To 3
  4880.          ArrayA(i, j) = Int(RandI * Rnd(1))
  4881.          ArrayC(i, j) = ArrayA(i, j)
  4882.          TmpA = TmpA + Format$(ArrayA(i, j), "00000  ")
  4883.          TmpC = TmpC + Format$(ArrayC(i, j), "00000  ")
  4884.       Next j
  4885.       TmpA = TmpA + Chr$(13)
  4886.       TmpC = TmpC + Chr$(13)
  4887.    Next i
  4888.    Idem = cMatrixCompare(3, ArrayA(), ArrayC())
  4889.    Tmp1 = Tmp1 & "First array (A) is " & Chr$(13) & Chr$(13) & TmpA & Chr$(13)
  4890.    Tmp1 = Tmp1 & "Second array (C) is " & Chr$(13) & Chr$(13) & TmpC & Chr$(13)
  4891.    Tmp1 = Tmp1 & "Compare of (A) = (C) is " & Idem & Chr$(13) & Chr$(13)
  4892.    cStartBasisTimer
  4893.    For i = 1 To ItemFile
  4894.       Idem = cMatrixCompare(3, ArrayA(), ArrayC())
  4895.    Next i
  4896.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  4897.    Label3.Caption = Tmp1
  4898. End Sub
  4899. Private Sub TestMatrixCopy()
  4900.    Dim Tmp1       As String
  4901.    Dim TmpA       As String
  4902.    Dim TmpC       As String
  4903.    Dim i          As Integer
  4904.    Dim j          As Integer
  4905.    ReDim ArrayA(1 To 3, 1 To 3) As Double
  4906.    ReDim ArrayC(1 To 3, 1 To 3) As Double
  4907.    Randomize Timer
  4908.    For i = 1 To 3
  4909.       For j = 1 To 3
  4910.          ArrayA(i, j) = Int(RandI * Rnd(1))
  4911.          ArrayC(i, j) = 0
  4912.          TmpA = TmpA + Format$(ArrayA(i, j), "00000  ")
  4913.       Next j
  4914.       TmpA = TmpA + Chr$(13)
  4915.    Next i
  4916.    Call cMatrixCopy(3, ArrayA(), ArrayC())
  4917.    For i = 1 To 3
  4918.       For j = 1 To 3
  4919.          TmpC = TmpC + Format$(ArrayC(i, j), "00000  ")
  4920.       Next j
  4921.       TmpC = TmpC + Chr$(13)
  4922.    Next i
  4923.    Tmp1 = Tmp1 & "First array (A) is " & Chr$(13) & Chr$(13) & TmpA & Chr$(13)
  4924.    Tmp1 = Tmp1 & "Copy of (A) = (C) is " & Chr$(13) & Chr$(13) & TmpC & Chr$(13)
  4925.    cStartBasisTimer
  4926.    For i = 1 To ItemFile
  4927.       Call cMatrixCopy(3, ArrayA(), ArrayC())
  4928.    Next i
  4929.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  4930.    Label3.Caption = Tmp1
  4931. End Sub
  4932. Private Sub TestMatrixDet()
  4933.    Dim Tmp1       As String
  4934.    Dim TmpA       As String
  4935.    Dim TmpC       As String
  4936.    Dim i          As Integer
  4937.    Dim j          As Integer
  4938.    Dim det        As Double
  4939.    Dim nSize      As Integer
  4940.    nSize = 3
  4941.    ReDim ArrayA(1 To nSize, 1 To nSize) As Double
  4942.    Randomize Timer
  4943.    For i = 1 To nSize
  4944.       For j = 1 To nSize
  4945.          ArrayA(i, j) = Int(RandI * Rnd(1))
  4946.          TmpA = TmpA + Format$(ArrayA(i, j), "00000  ")
  4947.       Next j
  4948.       TmpA = TmpA + Chr$(13)
  4949.    Next i
  4950.    Tmp1 = Tmp1 & "First array (A) is " & Chr$(13) & Chr$(13) & TmpA & Chr$(13)
  4951.    Tmp1 = Tmp1 & "Det of (A) = " & cMatrixDet(nSize, ArrayA()) & Chr$(13) & Chr$(13)
  4952.    cStartBasisTimer
  4953.    For i = 1 To ItemFile
  4954.       det = cMatrixDet(nSize, ArrayA())
  4955.       DoEvents
  4956.    Next i
  4957.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  4958.    Label3.Caption = Tmp1
  4959. End Sub
  4960. Private Sub TestMatrixInv()
  4961.    Dim Tmp1       As String
  4962.    Dim TmpA       As String
  4963.    Dim TmpC       As String
  4964.    Dim i          As Integer
  4965.    Dim j          As Integer
  4966.    Dim result     As Integer
  4967.    ReDim ArrayA(1 To 3, 1 To 3) As Double
  4968.    ReDim ArrayC(1 To 3, 1 To 3) As Double
  4969.    Randomize Timer
  4970.    result = cMatrixFill(3, ArrayA(), MATRIX_ZERO)
  4971.    result = cMatrixFill(3, ArrayC(), MATRIX_UNIT)
  4972.    For i = 1 To 3
  4973.       For j = 1 To 3
  4974.          ArrayA(i, j) = Int(RandI * Rnd(1))
  4975.          TmpA = TmpA + Format$(ArrayA(i, j), "00000  ")
  4976.       Next j
  4977.       TmpA = TmpA + Chr$(13)
  4978.    Next i
  4979.    result = cMatrixInv(3, ArrayA(), ArrayC())
  4980.    If (result = True) Then
  4981.       For i = 1 To 3
  4982.          For j = 1 To 3
  4983.             TmpC = TmpC + Format$(ArrayC(i, j), "0.0000000  ")
  4984.          Next j
  4985.          TmpC = TmpC + Chr$(13)
  4986.       Next i
  4987.    Else
  4988.       TmpC = " 'can be inverted'"
  4989.    End If
  4990.    Tmp1 = Tmp1 & "First array (A) is " & Chr$(13) & TmpA & Chr$(13)
  4991.    Tmp1 = Tmp1 & "Inv of (A) = (C) is " & Chr$(13) & TmpC & Chr$(13)
  4992.    TmpA = ""
  4993.    TmpC = ""
  4994.    result = cMatrixFill(3, ArrayA(), MATRIX_ZERO)
  4995.    result = cMatrixFill(3, ArrayC(), MATRIX_ZERO)
  4996.    For i = 1 To 3
  4997.       For j = 1 To 3
  4998.          TmpA = TmpA + Format$(ArrayA(i, j), "00000  ")
  4999.       Next j
  5000.       TmpA = TmpA + Chr$(13)
  5001.    Next i
  5002.    result = cMatrixInv(3, ArrayA(), ArrayC())
  5003.    If (result = True) Then
  5004.       For i = 1 To 3
  5005.          For j = 1 To 3
  5006.             TmpC = TmpC + Format$(ArrayC(i, j), "0.0000000  ")
  5007.          Next j
  5008.          TmpC = TmpC + Chr$(13)
  5009.       Next i
  5010.    Else
  5011.       TmpC = " 'can be inverted'"
  5012.    End If
  5013.    Tmp1 = Tmp1 & "First array (A) is " & Chr$(13) & TmpA & Chr$(13)
  5014.    Tmp1 = Tmp1 & "Inv of (A) = (C) is " & Chr$(13) & TmpC & Chr$(13) & Chr$(13)
  5015.    For i = 1 To 3
  5016.       For j = 1 To 3
  5017.          ArrayA(i, j) = Int(RandI * Rnd(1))
  5018.       Next j
  5019.    Next i
  5020.    cStartBasisTimer
  5021.    For i = 1 To ItemFile
  5022.       result = cMatrixInv(3, ArrayA(), ArrayC())
  5023.    Next i
  5024.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  5025.    Label3.Caption = Tmp1
  5026. End Sub
  5027. Private Sub TestMatrixMinCo()
  5028.    Dim Tmp1       As String
  5029.    Dim TmpA       As String
  5030.    Dim TmpC       As String
  5031.    Dim i          As Integer
  5032.    Dim j          As Integer
  5033.    Dim cofact     As Double
  5034.    Dim nSize      As Integer
  5035.    nSize = 3
  5036.    ReDim ArrayA(1 To nSize, 1 To nSize) As Double
  5037.    Randomize Timer
  5038.    For i = 1 To nSize
  5039.       For j = 1 To nSize
  5040.          ArrayA(i, j) = Int(RandI * Rnd(1))
  5041.          TmpA = TmpA + Format$(ArrayA(i, j), "00000  ")
  5042.       Next j
  5043.       TmpA = TmpA + Chr$(13)
  5044.    Next i
  5045.    Tmp1 = Tmp1 & "First array (A) is " & Chr$(13) & Chr$(13) & TmpA & Chr$(13) & Chr$(13)
  5046.    Tmp1 = Tmp1 & "CoFactor of A(1,1) = " & cMatrixCoFactor(nSize, ArrayA(), 1, 1) & Chr$(13)
  5047.    Tmp1 = Tmp1 & "CoFactor of A(2,2) = " & cMatrixCoFactor(nSize, ArrayA(), 2, 2) & Chr$(13)
  5048.    Tmp1 = Tmp1 & "CoFactor of A(3,3) = " & cMatrixCoFactor(nSize, ArrayA(), 3, 3) & Chr$(13) & Chr$(13)
  5049.    Tmp1 = Tmp1 & "Minor of A(1,1) = " & cMatrixMinor(nSize, ArrayA(), 1, 1) & Chr$(13)
  5050.    Tmp1 = Tmp1 & "Minor of A(2,2) = " & cMatrixMinor(nSize, ArrayA(), 2, 2) & Chr$(13)
  5051.    Tmp1 = Tmp1 & "Minor of A(3,3) = " & cMatrixMinor(nSize, ArrayA(), 3, 3) & Chr$(13) & Chr$(13)
  5052.    cStartBasisTimer
  5053.    For i = 1 To ItemFile
  5054.       cofact = cMatrixCoFactor(nSize, ArrayA(), 1, 1)
  5055.    Next i
  5056.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  5057.    Label3.Caption = Tmp1
  5058. End Sub
  5059. Private Sub TestMatrixMul()
  5060.    Dim Tmp1       As String
  5061.    Dim TmpA       As String
  5062.    Dim TmpB       As String
  5063.    Dim TmpC       As String
  5064.    Dim i          As Integer
  5065.    Dim j          As Integer
  5066.    ReDim ArrayA(1 To 3, 1 To 3) As Double
  5067.    ReDim ArrayB(1 To 3, 1 To 3) As Double
  5068.    ReDim ArrayC(1 To 3, 1 To 3) As Double
  5069.    Randomize Timer
  5070.    For i = 1 To 3
  5071.       For j = 1 To 3
  5072.          ArrayA(i, j) = Int(RandI * Rnd(1))
  5073.          ArrayB(i, j) = Int(RandI * Rnd(1))
  5074.          ArrayC(i, j) = 0
  5075.          TmpA = TmpA + Format$(ArrayA(i, j), "00000  ")
  5076.          TmpB = TmpB + Format$(ArrayB(i, j), "00000  ")
  5077.       Next j
  5078.       TmpA = TmpA + Chr$(13)
  5079.       TmpB = TmpB + Chr$(13)
  5080.    Next i
  5081.    Call cMatrixMul(3, ArrayA(), ArrayB(), ArrayC())
  5082.    For i = 1 To 3
  5083.       For j = 1 To 3
  5084.          TmpC = TmpC + Format$(ArrayC(i, j), "000000000000  ")
  5085.       Next j
  5086.       TmpC = TmpC + Chr$(13)
  5087.    Next i
  5088.    Tmp1 = Tmp1 & "First array (A) is " & Chr$(13) & Chr$(13) & TmpA & Chr$(13)
  5089.    Tmp1 = Tmp1 & "Second array (B) is " & Chr$(13) & Chr$(13) & TmpB & Chr$(13)
  5090.    Tmp1 = Tmp1 & "The multiply (A) . (B) = (C) is " & Chr$(13) & Chr$(13) & TmpC & Chr$(13)
  5091.    cStartBasisTimer
  5092.    For i = 1 To ItemFile
  5093.       Call cMatrixMul(3, ArrayA(), ArrayB(), ArrayC())
  5094.    Next i
  5095.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  5096.    Label3.Caption = Tmp1
  5097. End Sub
  5098. Private Sub TestMatrixSub()
  5099.    Dim Tmp1       As String
  5100.    Dim TmpA       As String
  5101.    Dim TmpB       As String
  5102.    Dim TmpC       As String
  5103.    Dim i          As Integer
  5104.    Dim j          As Integer
  5105.    ReDim ArrayA(1 To 3, 1 To 3) As Double
  5106.    ReDim ArrayB(1 To 3, 1 To 3) As Double
  5107.    ReDim ArrayC(1 To 3, 1 To 3) As Double
  5108.    Randomize Timer
  5109.    For i = 1 To 3
  5110.       For j = 1 To 3
  5111.          ArrayA(i, j) = Int(RandI * Rnd(1))
  5112.          ArrayB(i, j) = Int(RandI * Rnd(1))
  5113.          ArrayC(i, j) = 0
  5114.          TmpA = TmpA + Format$(ArrayA(i, j), "00000  ")
  5115.          TmpB = TmpB + Format$(ArrayB(i, j), "00000  ")
  5116.       Next j
  5117.       TmpA = TmpA + Chr$(13)
  5118.       TmpB = TmpB + Chr$(13)
  5119.    Next i
  5120.    Call cMatrixSub(3, ArrayA(), ArrayB(), ArrayC())
  5121.    For i = 1 To 3
  5122.       For j = 1 To 3
  5123.          TmpC = TmpC + Format$(ArrayC(i, j), "00000  ")
  5124.       Next j
  5125.       TmpC = TmpC + Chr$(13)
  5126.    Next i
  5127.    Tmp1 = Tmp1 & "First array (A) is " & Chr$(13) & Chr$(13) & TmpA & Chr$(13)
  5128.    Tmp1 = Tmp1 & "Second array (B) is " & Chr$(13) & Chr$(13) & TmpB & Chr$(13)
  5129.    Tmp1 = Tmp1 & "The substract (A) - (B) = (C) is " & Chr$(13) & Chr$(13) & TmpC & Chr$(13)
  5130.    cStartBasisTimer
  5131.    For i = 1 To ItemFile
  5132.       Call cMatrixSub(3, ArrayA(), ArrayB(), ArrayC())
  5133.    Next i
  5134.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  5135.    Label3.Caption = Tmp1
  5136. End Sub
  5137. Private Sub TestMatrixSymToeplitz()
  5138.    Dim Tmp1       As String
  5139.    Dim TmpA       As String
  5140.    Dim TmpC       As String
  5141.    Dim i          As Integer
  5142.    Dim j          As Integer
  5143.    Dim result     As Integer
  5144.    ReDim ArrayA(1 To 3, 1 To 3) As Double
  5145.    ReDim ArrayC(1 To 3, 1 To 3) As Double
  5146.    Randomize Timer
  5147.    For i = 1 To 1
  5148.       For j = 1 To 3
  5149.          ArrayA(i, j) = Int(RandI * Rnd(1))
  5150.          TmpA = TmpA + Format$(ArrayA(i, j), "00000  ")
  5151.       Next j
  5152.       TmpA = TmpA + Chr$(13)
  5153.    Next i
  5154.    result = cMatrixSymToeplitz(3, ArrayA(), ArrayC())
  5155.    For i = 1 To 3
  5156.       For j = 1 To 3
  5157.          TmpC = TmpC + Format$(ArrayC(i, j), "00000  ")
  5158.       Next j
  5159.       TmpC = TmpC + Chr$(13)
  5160.    Next i
  5161.    Tmp1 = Tmp1 & "First array (A) is " & Chr$(13) & Chr$(13) & TmpA & Chr$(13)
  5162.    Tmp1 = Tmp1 & "Symmetrical Toeplitz of (A) = (C) is " & Chr$(13) & Chr$(13) & TmpC & Chr$(13)
  5163.    cStartBasisTimer
  5164.    For i = 1 To ItemFile
  5165.       result = cMatrixSymToeplitz(3, ArrayA(), ArrayC())
  5166.    Next i
  5167.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  5168.    Label3.Caption = Tmp1
  5169. End Sub
  5170. Private Sub TestMatrixTranspose()
  5171.    Dim Tmp1       As String
  5172.    Dim TmpA       As String
  5173.    Dim TmpC       As String
  5174.    Dim i          As Integer
  5175.    Dim j          As Integer
  5176.    ReDim ArrayA(1 To 3, 1 To 3) As Double
  5177.    ReDim ArrayC(1 To 3, 1 To 3) As Double
  5178.    Randomize Timer
  5179.    For i = 1 To 3
  5180.       For j = 1 To 3
  5181.          ArrayA(i, j) = Int(RandI * Rnd(1))
  5182.          ArrayC(i, j) = 0
  5183.          TmpA = TmpA + Format$(ArrayA(i, j), "00000  ")
  5184.       Next j
  5185.       TmpA = TmpA + Chr$(13)
  5186.    Next i
  5187.    Call cMatrixTranspose(3, ArrayA(), ArrayC())
  5188.    For i = 1 To 3
  5189.       For j = 1 To 3
  5190.          TmpC = TmpC + Format$(ArrayC(i, j), "00000  ")
  5191.       Next j
  5192.       TmpC = TmpC + Chr$(13)
  5193.    Next i
  5194.    Tmp1 = Tmp1 & "First array (A) is " & Chr$(13) & Chr$(13) & TmpA & Chr$(13)
  5195.    Tmp1 = Tmp1 & "Transpose of (A) = (C) is " & Chr$(13) & Chr$(13) & TmpC & Chr$(13)
  5196.    cStartBasisTimer
  5197.    For i = 1 To ItemFile
  5198.       Call cMatrixTranspose(3, ArrayA(), ArrayC())
  5199.    Next i
  5200.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  5201.    Label3.Caption = Tmp1
  5202. End Sub
  5203. Private Sub TestMaxI()
  5204.    Dim Title      As String
  5205.    Dim Tmp        As String
  5206.    Dim Tmp1       As String
  5207.    Dim Tmp2       As String
  5208.    Dim i          As Integer
  5209.    Dim j          As Integer
  5210.    Dim m          As Double
  5211.    ReDim array(ItemMean) As Integer
  5212.    Randomize Timer
  5213.    For i = LBound(array) To UBound(array)
  5214.       array(i) = RandI * Rnd(1)
  5215.       List1.AddItem "" & array(i)
  5216.    Next i
  5217.    j = cSortI(array())
  5218.    For i = LBound(array) To UBound(array)
  5219.       List2.AddItem "" & array(i)
  5220.    Next i
  5221.    List2.ListIndex = List2.ListCount - 1
  5222.    Tmp1 = "The MAX of a integer array of " & (ItemMean + 1) & " elements is " & Chr$(13) & Chr$(13) & cMaxI(array()) & Chr$(13) & Chr$(13)
  5223.    cStartBasisTimer
  5224.    For i = 1 To ItemFile
  5225.       m = cMaxI(array())
  5226.    Next i
  5227.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  5228.    Label3.Caption = Tmp1
  5229. End Sub
  5230. Private Sub TestMD5()
  5231.    Dim Title      As String
  5232.    Dim Tmp        As String
  5233.    Dim Tmp1       As String
  5234.    Dim Tmp2       As String
  5235.    Dim Tmp3       As String
  5236.    Dim i          As Integer
  5237.    Dim j          As Long
  5238.    Tmp2 = "T2WIN-16"
  5239.    Tmp = Text1.Text
  5240.    Tmp1 = "HashMD5 for '" & Tmp2 & "' is " & cHashMD5(Tmp2) & Chr$(13) & Chr$(13)
  5241.    Tmp1 = Tmp1 & "HashMD5 for '" & Tmp & "' is " & cHashMD5(Tmp) & Chr$(13) & Chr$(13)
  5242.    Tmp1 = Tmp1 & "HashMD5 for '" & LCase$(Tmp2) & "' is " & cHashMD5(LCase$(Tmp2)) & Chr$(13) & Chr$(13)
  5243.    Tmp1 = Tmp1 & "HashMD5 for '" & LCase$(Tmp) & "' is " & cHashMD5(LCase$(Tmp)) & Chr$(13) & Chr$(13)
  5244.    Tmp1 = Tmp1 & "HashMD5 for '" & Left$(Tmp2, 3) & "' is " & cHashMD5(Left$(Tmp2, 3)) & Chr$(13) & Chr$(13)
  5245.    cStartBasisTimer
  5246.    For i = 1 To Item
  5247.       Tmp3 = cHashMD5(Tmp2)
  5248.    Next i
  5249.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  5250.    Label3.Caption = Tmp1
  5251. End Sub
  5252. Private Sub TestMDA(Management As Integer)
  5253.    Dim Tmp        As String
  5254.    Dim ErrCode    As Integer
  5255.    Dim MDA        As tagMULTIPLEDISKARRAY
  5256.    Dim TE         As tagTASKENTRY
  5257.    ErrCode = cMakeDir("c:\t2w_tmp")
  5258.    MDA.nFilename = "c:\t2w_tmp\mda.tmp"
  5259.    MDA.nType(1) = DA_LONG     'long
  5260.    MDA.nIsTyped(1) = False
  5261.    MDA.nRows(1) = 20
  5262.    MDA.nCols(1) = 20
  5263.    MDA.nSheets(1) = 2
  5264.    MDA.nType(2) = 10          'string
  5265.    MDA.nIsTyped(2) = False
  5266.    MDA.nRows(2) = 20
  5267.    MDA.nCols(2) = 20
  5268.    MDA.nSheets(2) = 2
  5269.    MDA.nType(9) = Len(TE)     'type'd
  5270.    MDA.nIsTyped(9) = True
  5271.    MDA.nRows(9) = 20
  5272.    MDA.nCols(9) = 20
  5273.    MDA.nSheets(9) = 2
  5274.    Select Case Management
  5275.       Case True      'create
  5276.          ErrCode = cMDACreate(MDA, True)
  5277.       Case False     'use
  5278.          ErrCode = cMDACreate(MDA, False)
  5279.       Case 1         'clear all
  5280.          ErrCode = cMDACreate(MDA, False)
  5281.          If (ErrCode = -1) Then ErrCode = cMDAClear(1, MDA)
  5282.          If (ErrCode = -1) Then ErrCode = cMDAClear(2, MDA)
  5283.          If (ErrCode = -1) Then ErrCode = cMDAClear(9, MDA)
  5284.       Case 2         'clear sheet 2
  5285.          ErrCode = cMDACreate(MDA, False)
  5286.          If (ErrCode = -1) Then ErrCode = cMDAClearSheet(1, MDA, 2)
  5287.          If (ErrCode = -1) Then ErrCode = cMDAClearSheet(2, MDA, 2)
  5288.          If (ErrCode = -1) Then ErrCode = cMDAClearSheet(9, MDA, 2)
  5289.       Case 3         'clear last row
  5290.          ErrCode = cMDACreate(MDA, False)
  5291.          If (ErrCode = -1) Then ErrCode = cMDAClearRow(1, MDA, MDA.nRows(1), 1)
  5292.          If (ErrCode = -1) Then ErrCode = cMDAClearRow(2, MDA, MDA.nRows(2), 1)
  5293.          If (ErrCode = -1) Then ErrCode = cMDAClearRow(9, MDA, MDA.nRows(9), 1)
  5294.       Case 4         'clear last col
  5295.          ErrCode = cMDACreate(MDA, False)
  5296.          If (ErrCode = -1) Then ErrCode = cMDAClearCol(1, MDA, MDA.nCols(1), 1)
  5297.          If (ErrCode = -1) Then ErrCode = cMDAClearCol(2, MDA, MDA.nCols(2), 1)
  5298.          If (ErrCode = -1) Then ErrCode = cMDAClearCol(9, MDA, MDA.nCols(9), 1)
  5299.       Case 5         'clear last row in all sheets
  5300.          ErrCode = cMDACreate(MDA, False)
  5301.          If (ErrCode = -1) Then ErrCode = cMDAClearRow(1, MDA, MDA.nRows(1), -1)
  5302.          If (ErrCode = -1) Then ErrCode = cMDAClearRow(2, MDA, MDA.nRows(2), -1)
  5303.          If (ErrCode = -1) Then ErrCode = cMDAClearRow(9, MDA, MDA.nRows(9), -1)
  5304.       Case 6         'clear last col in all sheets
  5305.          ErrCode = cMDACreate(MDA, False)
  5306.          If (ErrCode = -1) Then ErrCode = cMDAClearCol(1, MDA, MDA.nCols(1), -1)
  5307.          If (ErrCode = -1) Then ErrCode = cMDAClearCol(2, MDA, MDA.nCols(2), -1)
  5308.          If (ErrCode = -1) Then ErrCode = cMDAClearCol(9, MDA, MDA.nCols(9), -1)
  5309.    End Select
  5310.    Tmp = Tmp & "ErrCode = " & ErrCode & Chr$(13) & Chr$(13)
  5311.    If (ErrCode = True) Then
  5312.       
  5313.       Tmp = Tmp & "MDA.daSize          = " & MDA.daSize & Chr$(13)
  5314.       Tmp = Tmp & "MDA.Signature       = " & MDA.signature & Chr$(13)
  5315.       Tmp = Tmp & "MDA.nFilename       = " & Trim$(MDA.nFilename) & Chr$(13)
  5316.       Tmp = Tmp & "MDA.rHandle         = " & MDA.rHandle & Chr$(13)
  5317.       Tmp = Tmp & "MDA.rFileSize       = " & MDA.rFileSize & Chr$(13) & Chr$(13)
  5318.       Tmp = Tmp & "MDA.nType(1)(2)(9)        = (" & MDA.nType(1) & ") (" & MDA.nType(2) & ") (" & MDA.nType(9) & ")" & Chr$(13)
  5319.       Tmp = Tmp & "MDA.nIsTyped(1)(2)(9)     = (" & MDA.nIsTyped(1) & ") (" & MDA.nIsTyped(2) & ") (" & MDA.nIsTyped(9) & ")" & Chr$(13)
  5320.       Tmp = Tmp & "MDA.nRows(1)(2)(9)        = (" & MDA.nRows(1) & ") (" & MDA.nRows(2) & ") (" & MDA.nRows(9) & ")" & Chr$(13)
  5321.       Tmp = Tmp & "MDA.nCols(1)(2)(9)        = (" & MDA.nCols(1) & ") (" & MDA.nCols(2) & ") (" & MDA.nCols(9) & ")" & Chr$(13)
  5322.       Tmp = Tmp & "MDA.nSheets(1)(2)(9)      = (" & MDA.nSheets(1) & ") (" & MDA.nSheets(2) & ") (" & MDA.nSheets(9) & ")" & Chr$(13)
  5323.       Tmp = Tmp & "MDA.rElementSz(1)(2)(9)   = (" & MDA.rElementSz(1) & ") (" & MDA.rElementSz(2) & ") (" & MDA.rElementSz(9) & ")" & Chr$(13)
  5324.       Tmp = Tmp & "MDA.rSheetSz(1)(2)(9)     = (" & MDA.rSheetSz(1) & ") (" & MDA.rSheetSz(2) & ") (" & MDA.rSheetSz(9) & ")" & Chr$(13)
  5325.       Tmp = Tmp & "MDA.rOffsetPos(1)(2)(9)   = (" & MDA.rOffsetPos(1) & ") (" & MDA.rOffsetPos(2) & ") (" & MDA.rOffsetPos(9) & ")" & Chr$(13) & Chr$(13)
  5326.       If (Management = True) Then
  5327.          Call cMDAPut(1, MDA, 1, 1, 1, 123456789)
  5328.          Call cMDAPut(1, MDA, MDA.nRows(1), MDA.nCols(1), MDA.nSheets(1), 987654321)
  5329.       
  5330.          Call cMDAPut(2, MDA, 1, 1, 1, "S:1, ABCDEFGHIJ")
  5331.          Call cMDAPut(2, MDA, MDA.nRows(2), MDA.nCols(2), MDA.nSheets(2), "S:" & MDA.nSheets(2) & ", oprqstuvwxyz")
  5332.       
  5333.          ErrCode = cTasks(TE, True)
  5334.          Call cMDAPutType(9, MDA, 1, 1, 1, TE)
  5335.          ErrCode = cTasks(TE, False)
  5336.          Call cMDAPutType(9, MDA, MDA.nRows(9), MDA.nCols(9), MDA.nSheets(9), TE)
  5337.       
  5338.       End If
  5339.       Tmp = Tmp & "A:1  , R:1  , C:1  , S:1, Value : " & Trim$(cMDAGet(1, MDA, 1, 1, 1)) & "   , time : " & MDA.rTime & Chr$(13)
  5340.       Tmp = Tmp & "A:1  , R:" & MDA.nRows(1) & ", C:" & MDA.nCols(1) & ", S:" & MDA.nSheets(1) & ", Value : " & Trim$(cMDAGet(1, MDA, MDA.nRows(1), MDA.nCols(1), MDA.nSheets(1))) & "   , time : " & MDA.rTime & Chr$(13)
  5341.       Tmp = Tmp & "A:2  , R:1  , C:1  , S:1, Value : " & Trim$(cMDAGet(2, MDA, 1, 1, 1)) & "   , time : " & MDA.rTime & Chr$(13)
  5342.       Tmp = Tmp & "A:2  , R:" & MDA.nRows(2) & ", C:" & MDA.nCols(2) & ", S:" & MDA.nSheets(2) & ", Value : " & Trim$(cMDAGet(2, MDA, MDA.nRows(2), MDA.nCols(2), MDA.nSheets(2))) & "   , time : " & MDA.rTime & Chr$(13)
  5343.       Call cMDAGetType(9, MDA, 1, 1, 1, TE)
  5344.       Tmp = Tmp & "A:9  , R:1  , C:1  , S:1, TE.szModule : " & cCompress(TE.szModule) & "   , time : " & MDA.rTime & Chr$(13)
  5345.       Call cMDAGetType(9, MDA, MDA.nRows(9), MDA.nCols(9), MDA.nSheets(9), TE)
  5346.       Tmp = Tmp & "A:9  , R:" & MDA.nRows(9) & ", C:" & MDA.nCols(9) & ", S:" & MDA.nSheets(9) & ", TE.szModule : " & cCompress(TE.szModule) & "   , time : " & MDA.rTime & Chr$(13)
  5347.    End If
  5348.    Call cMDAClose(MDA, False)
  5349.    Label3.Caption = Tmp
  5350. End Sub
  5351. Private Sub TestMeanI()
  5352.    Dim Title      As String
  5353.    Dim Tmp        As String
  5354.    Dim Tmp1       As String
  5355.    Dim Tmp2       As String
  5356.    Dim i          As Integer
  5357.    Dim j          As Integer
  5358.    Dim m          As Double
  5359.    ReDim array(ItemMean) As Integer
  5360.    Randomize Timer
  5361.    m = 0
  5362.    For i = LBound(array) To UBound(array)
  5363.       array(i) = Int(RandI * Rnd(1))
  5364.       m = m + array(i)
  5365.       List1.AddItem "" & array(i)
  5366.    Next i
  5367.    Tmp1 = "The Mean of a integer array of " & (ItemMean + 1) & " elements is " & Chr$(13) & Chr$(13) & cMeanI(array()) & " (" & (m / (UBound(array) - LBound(array) + 1)) & ")" & Chr$(13) & Chr$(13)
  5368.    cStartBasisTimer
  5369.    For i = 1 To ItemFile
  5370.       m = cMeanI(array())
  5371.    Next i
  5372.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  5373.    Label3.Caption = Tmp1
  5374. End Sub
  5375. Private Sub TestMenuChange()
  5376.    Call cSysMenuChange(Me.hWnd, 0, "&Restaurer")
  5377.    Call cSysMenuChange(Me.hWnd, 1, "&Positionner")
  5378.    Call cSysMenuChange(Me.hWnd, 2, "&Taille")
  5379.    Call cSysMenuChange(Me.hWnd, 3, "&Ic
  5380.    Call cSysMenuChange(Me.hWnd, 4, "&Plein 
  5381. cran")
  5382.    Call cSysMenuChange(Me.hWnd, 6, "&Fermer" + Chr$(9) + "Alt+F4")
  5383.    Call cSysMenuChange(Me.hWnd, 8, "&T
  5384. che" + Chr$(9) + "Ctrl+Esc")
  5385. End Sub
  5386. Private Sub TestMin()
  5387.    Dim Title      As String
  5388.    Dim Tmp        As String
  5389.    Dim Tmp1       As String
  5390.    Dim Tmp2       As String
  5391.    Dim i          As Integer
  5392.    Dim j          As Long
  5393.    Tmp1 = "Min of [32760,1234567] is " & cMin(32760, 1234567) & Chr$(13)
  5394.    Tmp1 = Tmp1 + "Max of [32760,1234567] is " & cMax(32760, 1234567) & Chr$(13)
  5395.    cStartBasisTimer
  5396.    For i = 1 To Item
  5397.       j = cMin(32760, 1234567)
  5398.    Next i
  5399.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  5400.    Label3.Caption = Tmp1
  5401. End Sub
  5402. Private Sub TestMinI()
  5403.    Dim Title      As String
  5404.    Dim Tmp        As String
  5405.    Dim Tmp1       As String
  5406.    Dim Tmp2       As String
  5407.    Dim i          As Integer
  5408.    Dim j          As Integer
  5409.    Dim m          As Double
  5410.    ReDim array(ItemMean) As Integer
  5411.    Randomize Timer
  5412.    For i = LBound(array) To UBound(array)
  5413.       array(i) = RandI * Rnd(1)
  5414.       List1.AddItem "" & array(i)
  5415.    Next i
  5416.    j = cSortI(array())
  5417.    For i = LBound(array) To UBound(array)
  5418.       List2.AddItem "" & array(i)
  5419.    Next i
  5420.    List2.ListIndex = 0
  5421.    Tmp1 = "The MIN of a integer array of " & (ItemMean + 1) & " elements is " & Chr$(13) & Chr$(13) & cMinI(array()) & Chr$(13) & Chr$(13)
  5422.    cStartBasisTimer
  5423.    For i = 1 To ItemFile
  5424.       m = cMinI(array())
  5425.    Next i
  5426.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  5427.    Label3.Caption = Tmp1
  5428. End Sub
  5429. Private Sub TestMixChars()
  5430.    Dim Title      As String
  5431.    Dim Tmp        As String
  5432.    Dim Tmp1       As String
  5433.    Dim Tmp2       As String
  5434.    Dim i          As Integer
  5435.    Dim j          As Integer
  5436.                   
  5437.    Tmp = Text1.Text
  5438.    Tmp1 = Tmp1 + "MixChars of [" & Tmp & "] is " & cMixChars(Tmp) & Chr$(13) & Chr$(13)
  5439.    Tmp = "T2WIN-16"
  5440.    Tmp1 = Tmp1 + "MixChars of [" & Tmp & "] is " & cMixChars(Tmp) & Chr$(13) & Chr$(13)
  5441.    Tmp = "Nothing can beat the fox"
  5442.    Tmp1 = Tmp1 + "MixChars of [" & Tmp & "] is " & cMixChars(Tmp) & Chr$(13) & Chr$(13)
  5443.    Tmp = Text1.Text
  5444.    Tmp1 = Tmp1 + "MixChars of [" & Tmp & "] is " & cMixChars(Tmp) & Chr$(13) & Chr$(13)
  5445.                   
  5446.    cStartBasisTimer
  5447.    For i = 1 To Item
  5448.       Tmp2 = cMixChars(Tmp)
  5449.    Next i
  5450.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  5451.    Label3.Caption = Tmp1
  5452. End Sub
  5453. Private Sub TestMnuLanguage()
  5454.    Load frmLng
  5455.    Call cShowWindow(frmLng.hWnd, 1, 340)
  5456.    frmLng.Show
  5457. End Sub
  5458. Private Sub TestMorse()
  5459.    Dim Title      As String
  5460.    Dim Tmp        As String
  5461.    Dim Tmp1       As String
  5462.    Dim Tmp2       As String
  5463.    Dim i          As Integer
  5464.    Dim j          As Integer
  5465.                   
  5466.    Tmp = "SOS"
  5467.    Tmp1 = Tmp1 + "MixChars of [" & Tmp & "] is " & cMorse(Tmp) & Chr$(13) & Chr$(13)
  5468.    Tmp = "T2WIN-16"
  5469.    Tmp1 = Tmp1 + "MixChars of [" & Tmp & "] is " & cMorse(Tmp) & Chr$(13) & Chr$(13)
  5470.    Tmp = "Nothing can beat the fox"
  5471.    Tmp1 = Tmp1 + "MixChars of [" & Tmp & "] is " & cMorse(Tmp) & Chr$(13) & Chr$(13)
  5472.    Tmp = Text1.Text
  5473.    Tmp1 = Tmp1 + "MixChars of [" & Tmp & "] is " & cMorse(Tmp) & Chr$(13) & Chr$(13)
  5474.                   
  5475.    cStartBasisTimer
  5476.    For i = 1 To Item
  5477.       Tmp2 = cMorse(Tmp)
  5478.    Next i
  5479.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  5480.    Label3.Caption = Tmp1
  5481. End Sub
  5482. Private Sub TestMsgBox()
  5483.    Dim i       As Integer
  5484.    Dim N       As Integer
  5485.    Dim Tmp     As String
  5486.    Tmp = "'T2WIN-16'" & Chr$(13) & Chr$(13)
  5487.    Tmp = Tmp & " is a powerfull data link library for using with Visual Basic 3.0 for Windows." & Chr$(13) & Chr$(13)
  5488.    Tmp = Tmp & "It looks very better than the standard message box." & Chr$(13) & Chr$(13)
  5489.    Tmp = Tmp & "All push buttons are displayed in French." & Chr$(13) & Chr$(13)
  5490.    Tmp = Tmp & "The system menu is also in French." & Chr$(13) & Chr$(13)
  5491.    Tmp = Tmp & "A TimeOut of 10 seconds has been activated and displayed."
  5492.    For i = 0 To 5
  5493.       Call cLngBoxMsg(LNG_FRENCH, Tmp, i + (16 * i) + 512 + MB_MESSAGE_CENTER + MB_TIMEOUT_10 + MB_DISPLAY_TIMEOUT, "Message Box in French with TimeOut")
  5494.    Next i
  5495. End Sub
  5496. Private Sub TestOneCharFromLeft()
  5497.    Dim Title      As String
  5498.    Dim Tmp        As String
  5499.    Dim Tmp1       As String
  5500.    Dim Tmp2       As String
  5501.    Dim i          As Integer
  5502.    Dim j          As Integer
  5503.    Tmp = Text1.Text
  5504.    Title = "The 3,7,1 chars from left of [" & Tmp & "] are " & Chr$(13) & Chr$(13)
  5505.    Tmp = Text1.Text
  5506.    Tmp1 = Title & "3:" & cOneCharFromLeft(Tmp, 3) & " | 7:" & cOneCharFromLeft(Tmp, 7) & " | 1:" & cOneCharFromLeft(Tmp, 1) & Chr$(13) & Chr$(13)
  5507.    cStartBasisTimer
  5508.    For i = 1 To Item
  5509.       Tmp2 = cOneCharFromLeft(Tmp, 2)
  5510.    Next i
  5511.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  5512.    Label3.Caption = Tmp1
  5513. End Sub
  5514. Private Sub TestOneCharFromRight()
  5515.    Dim Title      As String
  5516.    Dim Tmp        As String
  5517.    Dim Tmp1       As String
  5518.    Dim Tmp2       As String
  5519.    Dim i          As Integer
  5520.    Dim j          As Integer
  5521.    Tmp = Text1.Text
  5522.    Title = "The 3,7,1 chars from right of [" & Tmp & "] are " & Chr$(13) & Chr$(13)
  5523.    Tmp = Text1.Text
  5524.    Tmp1 = Title & "3:" & cOneCharFromRight(Tmp, 3) & " | 7:" & cOneCharFromRight(Tmp, 7) & " | 1:" & cOneCharFromRight(Tmp, 1) & Chr$(13) & Chr$(13)
  5525.    cStartBasisTimer
  5526.    For i = 1 To Item
  5527.       Tmp2 = cOneCharFromRight(Tmp, 2)
  5528.    Next i
  5529.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  5530.    Label3.Caption = Tmp1
  5531. End Sub
  5532. Private Sub TestOrToken()
  5533.    Dim Title      As String
  5534.    Dim Tmp        As String
  5535.    Dim Tmp1       As String
  5536.    Dim Tmp2       As String
  5537.    Dim i          As Integer
  5538.    Dim j          As Integer
  5539.    Tmp = "FOX|OVER|THE"
  5540.    Tmp2 = "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG"
  5541.    Tmp1 = "One of token '" & Tmp & "' in '" & Tmp2 & "' is " & IIf(cOrToken(Tmp2, Tmp), "present", "not present") & Chr$(13) & Chr$(13)
  5542.    Tmp = "quick|jumps|the"
  5543.    Tmp2 = "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG"
  5544.    Tmp1 = Tmp1 & "One of token '" & Tmp & "' in '" & Tmp2 & "' is " & IIf(cOrToken(Tmp2, Tmp), "present", "not present") & Chr$(13) & Chr$(13)
  5545.    Tmp = "FOX\OVER\THE"
  5546.    Tmp2 = "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG"
  5547.    Tmp1 = Tmp1 & "One of token '" & Tmp & "' in '" & Tmp2 & "' is " & IIf(cOrTokenIn(Tmp2, Tmp, "\"), "present", "not present") & Chr$(13) & Chr$(13)
  5548.    Tmp = "quick\jumps\the"
  5549.    Tmp2 = "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG"
  5550.    Tmp1 = Tmp1 & "One of token '" & Tmp & "' in '" & Tmp2 & "' is " & IIf(cOrTokenIn(Tmp2, Tmp, "\"), "present", "not present") & Chr$(13) & Chr$(13)
  5551.    Tmp = "FOX/OVER/THE"
  5552.    Tmp2 = "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG"
  5553.    Tmp1 = Tmp1 & "One of token '" & Tmp & "' in '" & Tmp2 & "' is " & IIf(cOrTokenIn(Tmp2, Tmp, "\"), "present", "not present") & Chr$(13) & Chr$(13)
  5554.    Tmp = "quick\JUMPS\the"
  5555.    Tmp2 = "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG"
  5556.    Tmp1 = Tmp1 & "One of token '" & Tmp & "' in '" & Tmp2 & "' is " & IIf(cOrTokenIn(Tmp2, Tmp, "\"), "present", "not present") & Chr$(13) & Chr$(13)
  5557.    Tmp = LCase$("quick\jumps\THE")
  5558.    Tmp2 = LCase$("THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG")
  5559.    Tmp1 = Tmp1 & "One of token '" & Tmp & "' in '" & Tmp2 & "' is " & IIf(cOrTokenIn(Tmp2, Tmp, "\"), "present", "not present") & Chr$(13) & Chr$(13)
  5560.    cStartBasisTimer
  5561.    For i = 1 To Item
  5562.       j = cOrToken(Tmp2, Tmp)
  5563.    Next i
  5564.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  5565.    Label3.Caption = Tmp1
  5566. End Sub
  5567. Private Sub TestPatternExtMatch()
  5568.    Dim Title      As String
  5569.    Dim Tmp        As String
  5570.    Dim Tmp1       As String
  5571.    Dim Tmp2       As String
  5572.    Dim Tmp3       As String
  5573.    Dim i          As Integer
  5574.    Dim j          As Integer
  5575.    Tmp2 = "Under the blue sky, the sun lights"
  5576.    Tmp1 = "PatternExtMatch '" & Tmp2 & "' with" & Chr$(13) & Chr$(13)
  5577.    Tmp3 = "*"
  5578.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternExtMatch(Tmp2, Tmp3) & Chr$(13)
  5579.    Tmp3 = "*??*???*?"
  5580.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternExtMatch(Tmp2, Tmp3) & Chr$(13)
  5581.    Tmp3 = "*Under*"
  5582.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternExtMatch(Tmp2, Tmp3) & Chr$(13)
  5583.    Tmp3 = "*sky*"
  5584.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternExtMatch(Tmp2, Tmp3) & Chr$(13)
  5585.    Tmp3 = "*lights"
  5586.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternExtMatch(Tmp2, Tmp3) & Chr$(13)
  5587.    Tmp3 = "??der*sky*ligh??*"
  5588.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternExtMatch(Tmp2, Tmp3) & Chr$(13)
  5589.    Tmp3 = "Under?the * s??,*"
  5590.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternExtMatch(Tmp2, Tmp3) & Chr$(13)
  5591.    Tmp3 = "[U-U][a-z][a-z][a-z][a-z]?the *"
  5592.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternExtMatch(Tmp2, Tmp3) & Chr$(13)
  5593.    Tmp3 = "[U-U][!A-Z][^A-Z][^A-Z][!A-Z]?the *[s-s]"
  5594.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternExtMatch(Tmp2, Tmp3) & Chr$(13)
  5595.    Tmp3 = "~55~6E*~73"
  5596.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternExtMatch(Tmp2, Tmp3) & Chr$(13)
  5597.    Tmp3 = "[Uu][Nn][dD][eE][opqrst]?the *[rstu]"
  5598.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternExtMatch(Tmp2, Tmp3) & Chr$(13)
  5599.    Tmp3 = "Under?the *[~72~73~74~75]"
  5600.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternExtMatch(Tmp2, Tmp3) & Chr$(13) & Chr$(13)
  5601.    Tmp3 = "*under*"
  5602.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternExtMatch(Tmp2, Tmp3) & Chr$(13)
  5603.    Tmp3 = "Under*sun"
  5604.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternExtMatch(Tmp2, Tmp3) & Chr$(13)
  5605.    Tmp3 = "Under t??e*"
  5606.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternExtMatch(Tmp2, Tmp3) & Chr$(13)
  5607.    Tmp3 = "[U-U][!a-z][^A-Z][^A-Z][!A-Z]?the *[!s-s]"
  5608.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternExtMatch(Tmp2, Tmp3) & Chr$(13)
  5609.    Tmp3 = "~55~6G*~73"
  5610.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternExtMatch(Tmp2, Tmp3) & Chr$(13)
  5611.    Tmp3 = "[Uu][Nn][dD][eE][opqrst]?the *[rStu]"
  5612.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternExtMatch(Tmp2, Tmp3) & Chr$(13)
  5613.    Tmp3 = "Under?the *[~72~53~74~75]"
  5614.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternExtMatch(Tmp2, Tmp3) & Chr$(13) & Chr$(13)
  5615.    Tmp3 = "Under?the * s??,*"
  5616.    cStartBasisTimer
  5617.    For i = 1 To Item
  5618.       j = cPatternExtMatch(Tmp2, Tmp3)
  5619.    Next i
  5620.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  5621.    Label3.Caption = Tmp1
  5622. End Sub
  5623. Private Sub TestPatternMatch()
  5624.    Dim Title      As String
  5625.    Dim Tmp        As String
  5626.    Dim Tmp1       As String
  5627.    Dim Tmp2       As String
  5628.    Dim Tmp3       As String
  5629.    Dim i          As Integer
  5630.    Dim j          As Integer
  5631.    Tmp2 = "Under the blue sky, the sun lights"
  5632.    Tmp1 = "PatternMatch '" & Tmp2 & "' with" & Chr$(13) & Chr$(13)
  5633.    Tmp3 = "*"
  5634.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternMatch(Tmp2, Tmp3) & Chr$(13)
  5635.    Tmp3 = "*??*???*?"
  5636.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternMatch(Tmp2, Tmp3) & Chr$(13)
  5637.    Tmp3 = "*Under*"
  5638.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternMatch(Tmp2, Tmp3) & Chr$(13)
  5639.    Tmp3 = "*sky*"
  5640.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternMatch(Tmp2, Tmp3) & Chr$(13)
  5641.    Tmp3 = "*lights"
  5642.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternMatch(Tmp2, Tmp3) & Chr$(13)
  5643.    Tmp3 = "??der*sky*ligh??*"
  5644.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternMatch(Tmp2, Tmp3) & Chr$(13)
  5645.    Tmp3 = "Under?the * s??,*"
  5646.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternMatch(Tmp2, Tmp3) & Chr$(13) & Chr$(13)
  5647.    Tmp3 = "*under*"
  5648.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternMatch(Tmp2, Tmp3) & Chr$(13)
  5649.    Tmp3 = "Under*sun"
  5650.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternMatch(Tmp2, Tmp3) & Chr$(13)
  5651.    Tmp3 = "Under t??e*"
  5652.    Tmp1 = Tmp1 & "'" & Tmp3 & "'  is " & cPatternMatch(Tmp2, Tmp3) & Chr$(13) & Chr$(13)
  5653.    Tmp3 = "Under?the * s??,*"
  5654.    cStartBasisTimer
  5655.    For i = 1 To Item
  5656.       j = cPatternMatch(Tmp2, Tmp3)
  5657.    Next i
  5658.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  5659.    Label3.Caption = Tmp1
  5660. End Sub
  5661. Private Sub TestProperName()
  5662.    Dim Title      As String
  5663.    Dim Tmp        As String
  5664.    Dim Tmp1       As String
  5665.    Dim Tmp2       As String
  5666.    Dim i          As Integer
  5667.    Dim j          As Integer
  5668.    Tmp = Text1.Text
  5669.    Tmp1 = Tmp1 + "ProperName of [" & Tmp & "] is " & cProperName(Tmp) & Chr$(13) & Chr$(13)
  5670.    Tmp = "John fitz,jr"
  5671.    Tmp1 = Tmp1 + "ProperName of [" & Tmp & "] is " & cProperName(Tmp) & Chr$(13) & Chr$(13)
  5672.    Tmp = "john Fitz, jr"
  5673.    Tmp1 = Tmp1 + "ProperName of [" & Tmp & "] is " & cProperName(Tmp) & Chr$(13) & Chr$(13)
  5674.    Tmp = "macdonald"
  5675.    Tmp1 = Tmp1 + "ProperName of [" & Tmp & "] is " & cProperName(Tmp) & Chr$(13) & Chr$(13)
  5676.    Tmp = "mac donald"
  5677.    Tmp1 = Tmp1 + "ProperName of [" & Tmp & "] is " & cProperName(Tmp) & Chr$(13) & Chr$(13)
  5678.                   
  5679.    cStartBasisTimer
  5680.    For i = 1 To Item
  5681.       Tmp2 = cProperName(Tmp)
  5682.    Next i
  5683.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  5684.    Label3.Caption = Tmp1
  5685. End Sub
  5686. Private Sub TestProperName2()
  5687.    Dim Title      As String
  5688.    Dim Tmp        As String
  5689.    Dim Tmp1       As String
  5690.    Dim Tmp2       As String
  5691.    Dim i          As Integer
  5692.    Dim j          As Integer
  5693.    Tmp = Text1.Text
  5694.    Tmp1 = Tmp1 + "ProperName2 of '" & Tmp & "' is '" & cProperName2(Tmp, "", 0) & "'" & Chr$(13) & Chr$(13)
  5695.    Tmp = "JOHN FITZ,JR"
  5696.    Tmp1 = Tmp1 + "ProperName2 of '" & Tmp & "' is '" & cProperName2(Tmp, "", PN_UPPERCASE Or PN_PUNCTUATION) & "'" & Chr$(13) & Chr$(13)
  5697.    Tmp = "john Fitz,jr"
  5698.    Tmp1 = Tmp1 + "ProperName2 of '" & Tmp & "' is '" & cProperName2(Tmp, "", PN_PUNCTUATION) & "'" & Chr$(13) & Chr$(13)
  5699.    Tmp = "macdonald"
  5700.    Tmp1 = Tmp1 + "ProperName2 of '" & Tmp & "' is '" & cProperName2(Tmp, "", 0) & "'" & Chr$(13) & Chr$(13)
  5701.    Tmp = "mac donald"
  5702.    Tmp1 = Tmp1 + "ProperName2 of '" & Tmp & "' is '" & cProperName2(Tmp, "", 0) & "'" & Chr$(13) & Chr$(13)
  5703.    Tmp = "a.l. greene jr."
  5704.    Tmp1 = Tmp1 + "ProperName2 of '" & Tmp & "' is '" & cProperName2(Tmp, "", PN_PUNCTUATION) & "'" & Chr$(13) & Chr$(13)
  5705.    Tmp = "shale and sandstone and till"
  5706.    Tmp1 = Tmp1 + "ProperName2 of '" & Tmp & "' is '" & cProperName2(Tmp, "the/of/a/an/and", PN_PUNCTUATION) & "'" & Chr$(13) & Chr$(13)
  5707.    Tmp = "a sandstone or a shale"
  5708.    Tmp1 = Tmp1 + "ProperName2 of '" & Tmp & "' is '" & cProperName2(Tmp, "the/or/of/a/an/and", PN_PUNCTUATION) & "'" & Chr$(13) & Chr$(13)
  5709.    Tmp = "RR2 BARRHEAD"
  5710.    Tmp1 = Tmp1 + "ProperName2 of '" & Tmp & "' is '" & cProperName2(Tmp, "rr2", PN_UPPERCASE Or PN_PUNCTUATION Or PN_KEEP_ORIGINAL) & "'" & Chr$(13) & Chr$(13)
  5711.    Tmp = "ANDY MACDONALD"
  5712.    Tmp1 = Tmp1 + "ProperName2 of '" & Tmp & "' is '" & cProperName2(Tmp, "mac", PN_UPPERCASE Or PN_PUNCTUATION Or PN_KEEP_ORIGINAL Or PN_ONLY_LEADER_SPACE) & "'" & Chr$(13) & Chr$(13)
  5713.                   
  5714.    cStartBasisTimer
  5715.    For i = 1 To Item
  5716.       Tmp2 = cProperName2(Tmp, "", 0)
  5717.    Next i
  5718.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  5719.    Label3.Caption = Tmp1
  5720. End Sub
  5721. Private Sub TestRcsCountFileDir()
  5722.    Dim Title      As String
  5723.    Dim Tmp        As String
  5724.    Dim Tmp1       As String
  5725.    Dim Tmp2       As String
  5726.    Dim i          As Integer
  5727.    Dim j          As Integer
  5728.    Dim k          As Integer
  5729.    Tmp1 = ""
  5730.    Tmp1 = Tmp1 & "Total directories in C: is " & cRcsCountFileDir(False, "C:", "", True) & Chr$(13)
  5731.    Tmp1 = Tmp1 & "Total directories in D: is " & cRcsCountFileDir(False, "D:", "", True) & Chr$(13)
  5732.    Tmp1 = Tmp1 & Chr$(13)
  5733.    Tmp1 = Tmp1 & "Total files in C: is " & cRcsCountFileDir(True, "C:", "", True) & Chr$(13)
  5734.    Tmp1 = Tmp1 & "Total files in D: is " & cRcsCountFileDir(True, "D:", "", True) & Chr$(13)
  5735.    Tmp1 = Tmp1 & Chr$(13)
  5736.    Tmp1 = Tmp1 & "Total files in C:*.DAT is " & cRcsCountFileDir(True, "C:", "*.DAT", True) & Chr$(13)
  5737.    Tmp1 = Tmp1 & "Total files in D:*.DAT is " & cRcsCountFileDir(True, "D:", "*.DAT", True) & Chr$(13)
  5738.    Tmp1 = Tmp1 & Chr$(13)
  5739.    Tmp1 = Tmp1 & "Total directories in C:\ is " & cRcsCountFileDir(False, "C:", "", False) & Chr$(13)
  5740.    Tmp1 = Tmp1 & "Total directories in D:\ is " & cRcsCountFileDir(False, "D:", "", False) & Chr$(13)
  5741.    Tmp1 = Tmp1 & Chr$(13)
  5742.    Tmp1 = Tmp1 & "Total files in C:\ is " & cRcsCountFileDir(True, "C:", "", False) & Chr$(13)
  5743.    Tmp1 = Tmp1 & "Total files in D:\ is " & cRcsCountFileDir(True, "D:", "", False) & Chr$(13)
  5744.    Tmp1 = Tmp1 & Chr$(13)
  5745.    Tmp1 = Tmp1 & "Total files in C:\*.DAT is " & cRcsCountFileDir(True, "C:", "*.DAT", False) & Chr$(13)
  5746.    Tmp1 = Tmp1 & "Total files in D:\*.DAT is " & cRcsCountFileDir(True, "D:", "*.DAT", False) & Chr$(13)
  5747.    Tmp1 = Tmp1 & Chr$(13)
  5748.    cStartBasisTimer
  5749.    For i = 1 To 10
  5750.       k = cRcsCountFileDir(False, "C:", "", False)
  5751.    Next i
  5752.    Tmp1 = Tmp1 & "speed for " & 10 & " = " & cReadBasisTimer() & " ms"
  5753.    Label3.Caption = Tmp1
  5754. End Sub
  5755. Private Sub TestRcsFilesSize()
  5756.    Dim Title      As String
  5757.    Dim Tmp        As String
  5758.    Dim Tmp1       As String
  5759.    Dim Tmp2       As String
  5760.    Dim i          As Integer
  5761.    Dim j          As Integer
  5762.    Dim k          As Long
  5763.    Dim Size1      As Long
  5764.    Dim Size2      As Long
  5765.    Tmp1 = ""
  5766.    Tmp1 = Tmp1 & "Size of files c:\*.* is " & cRcsFilesSize("c:\", "*.*", False) & Chr$(13)
  5767.    Tmp1 = Tmp1 & "Size of files c:\*.exe is " & cRcsFilesSize("c:\", "*.exe", False) & Chr$(13)
  5768.    Tmp1 = Tmp1 & "Size of files c:\*.com is " & cRcsFilesSize("c:\", "*.com", False) & Chr$(13)
  5769.    Tmp1 = Tmp1 & Chr$(13)
  5770.    Tmp1 = Tmp1 & "Size of files c:\*.* on disk is " & cRcsFilesSizeOnDisk("c:\", "*.*", False) & Chr$(13)
  5771.    Tmp1 = Tmp1 & "Size of files c:\*.exe on disk is " & cRcsFilesSizeOnDisk("c:\", "*.exe", False) & Chr$(13)
  5772.    Tmp1 = Tmp1 & "Size of files c:\*.com on disk is " & cRcsFilesSizeOnDisk("c:\", "*.com", False) & Chr$(13)
  5773.    Tmp1 = Tmp1 & Chr$(13)
  5774.    Tmp1 = Tmp1 & "Slack of files c:\*.* on disk is " & cRcsFilesSlack("c:\", "*.*", False, Size1, Size2) & " %" & Chr$(13)
  5775.    Tmp1 = Tmp1 & "Slack of files c:\*.exe on disk is " & cRcsFilesSlack("c:\", "*.exe", False, Size1, Size2) & " %" & Chr$(13)
  5776.    Tmp1 = Tmp1 & "Slack of files c:\*.com on disk is " & cRcsFilesSlack("c:\", "*.com", False, Size1, Size2) & " %" & Chr$(13)
  5777.    Tmp1 = Tmp1 & Chr$(13)
  5778.    Tmp1 = Tmp1 & "Size of files starting with c:\*.* is " & cRcsFilesSize("c:\", "*.*", True) & Chr$(13)
  5779.    Tmp1 = Tmp1 & "Size of files starting with c:\*.exe is " & cRcsFilesSize("c:\", "*.exe", True) & Chr$(13)
  5780.    Tmp1 = Tmp1 & "Size of files starting with c:\*.com is " & cRcsFilesSize("c:\", "*.com", True) & Chr$(13)
  5781.    Tmp1 = Tmp1 & Chr$(13)
  5782.    Tmp1 = Tmp1 & "Size of files starting with c:\*.* on disk is " & cRcsFilesSizeOnDisk("c:\", "*.*", True) & Chr$(13)
  5783.    Tmp1 = Tmp1 & "Size of files starting with c:\*.exe on disk is " & cRcsFilesSizeOnDisk("c:\", "*.exe", True) & Chr$(13)
  5784.    Tmp1 = Tmp1 & "Size of files starting with c:\*.com on disk is " & cRcsFilesSizeOnDisk("c:\", "*.com", True) & Chr$(13)
  5785.    Tmp1 = Tmp1 & Chr$(13)
  5786.    Tmp1 = Tmp1 & "Slack of files starting with c:\*.* on disk is " & cRcsFilesSlack("c:\", "*.*", True, Size1, Size2) & " %" & Chr$(13)
  5787.    Tmp1 = Tmp1 & "Slack of files starting with c:\*.exe on disk is " & cRcsFilesSlack("c:\", "*.exe", True, Size1, Size2) & " %" & Chr$(13)
  5788.    Tmp1 = Tmp1 & "Slack of files starting with c:\*.com on disk is " & cRcsFilesSlack("c:\", "*.com", True, Size1, Size2) & " %" & Chr$(13)
  5789.    Tmp1 = Tmp1 & Chr$(13)
  5790.    cStartBasisTimer
  5791.    For i = 1 To 10
  5792.       k = cRcsFilesSize("c:\", "*.*", False)
  5793.    Next i
  5794.    Tmp1 = Tmp1 & "speed for " & 10 & " = " & cReadBasisTimer() & " ms"
  5795.    Label3.Caption = Tmp1
  5796. End Sub
  5797. Private Sub TestReadLanguage()
  5798.    Load frmLng
  5799.    Call cShowWindow(frmLng.hWnd, 1, 340)
  5800.    frmLng.Show
  5801. End Sub
  5802. Private Sub TestRegistrationKey()
  5803.    Dim Title      As String
  5804.    Dim Tmp        As String
  5805.    Dim Tmp1       As String
  5806.    Dim Tmp2       As String
  5807.    Dim Tmp3       As String
  5808.    Dim i          As Integer
  5809.    Dim j          As Long
  5810.    Tmp2 = "T2WIN-16"
  5811.    Tmp3 = "12345"
  5812.    Tmp = Text1.Text
  5813.    Tmp1 = "Registration key for '" & Tmp2 & "' with '" & Tmp3 & "' is " & cRegistrationKey(Tmp2, Val(Tmp3)) & Chr$(13) & Chr$(13)
  5814.    Tmp1 = Tmp1 & "Registration key for '" & cBlockCharFromLeft(Tmp2, 1) & "n" & "' with '" & Tmp3 & "' is " & cRegistrationKey(cBlockCharFromLeft(Tmp2, 1) + "n", Val(Tmp3)) & Chr$(13) & Chr$(13)
  5815.    Tmp1 = Tmp1 & "Registration key for '" & Tmp & "' with '" & Tmp3 & "' is " & cRegistrationKey(Tmp, Val(Tmp3)) & Chr$(13) & Chr$(13)
  5816.    Tmp1 = Tmp1 & "Registration key for '" & LCase$(Tmp2) & "' with '" & Tmp3 & "' is " & cRegistrationKey(LCase$(Tmp2), Val(Tmp3)) & Chr$(13) & Chr$(13)
  5817.    Tmp1 = Tmp1 & "Registration key for '" & LCase$(Tmp) & "' with '" & Tmp3 & "' is " & cRegistrationKey(LCase$(Tmp), Val(Tmp3)) & Chr$(13) & Chr$(13)
  5818.    Tmp1 = Tmp1 & "Registration key for '" & Left$(Tmp2, 3) & "' with '" & Tmp3 & "' is " & cRegistrationKey(Left$(Tmp2, 3), Val(Tmp3)) & Chr$(13) & Chr$(13)
  5819.    cStartBasisTimer
  5820.    For i = 1 To Item
  5821.       j = cRegistrationKey(Tmp2, Val(Tmp3))
  5822.    Next i
  5823.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  5824.    Label3.Caption = Tmp1
  5825. End Sub
  5826. Private Sub TestRemoveBlockChar()
  5827.    Dim Title      As String
  5828.    Dim Tmp        As String
  5829.    Dim Tmp1       As String
  5830.    Dim Tmp2       As String
  5831.    Dim i          As Integer
  5832.    Dim j          As Integer
  5833.    Tmp = Text1.Text
  5834.    Title = "Removing 3 chars from the 7 of [" & Tmp & "] is "
  5835.    Tmp = cRemoveBlockChar(Tmp, 7, 3)
  5836.    Tmp1 = Title & Tmp & Chr$(13) & Chr$(13)
  5837.    cStartBasisTimer
  5838.    For i = 1 To Item
  5839.       Tmp = cRemoveBlockChar(Tmp, 1, 2)
  5840.    Next i
  5841.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  5842.    Label3.Caption = Tmp1
  5843. End Sub
  5844. Private Sub TestRemoveOneChar()
  5845.    Dim Title      As String
  5846.    Dim Tmp        As String
  5847.    Dim Tmp1       As String
  5848.    Dim Tmp2       As String
  5849.    Dim i          As Integer
  5850.    Dim j          As Integer
  5851.    Tmp = Text1.Text
  5852.    Title = "Removing the 7 char of [" & Tmp & "] is "
  5853.    Tmp = cRemoveOneChar(Tmp, 7)
  5854.    Tmp1 = Title & Tmp & Chr$(13) & Chr$(13)
  5855.    cStartBasisTimer
  5856.    For i = 1 To Item
  5857.       Tmp = cRemoveOneChar(Tmp, 1)
  5858.    Next i
  5859.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  5860.    Label3.Caption = Tmp1
  5861. End Sub
  5862. Private Sub TestRenameFile()
  5863.    Dim Title      As String
  5864.    Dim Tmp        As String
  5865.    Dim Tmp1       As String
  5866.    Dim Tmp2       As String
  5867.    Dim i          As Integer
  5868.    Dim j          As Integer
  5869.    j = cKillFile("XY~YX~XY.~~~")
  5870.    j = cKillFile("XY-YX-XY.---")
  5871.    Close #1
  5872.    Open "XY~YX~XY.~~~" For Output As #1
  5873.    Print #1, "this is a test";
  5874.    Close #1
  5875.    Tmp1 = "File XY~YX~XY.~~~ " & IIf(cRenameFile("XY~YX~XY.~~~", "XY-YX-XY.---") = True, "renamed in XY-YX-XY.---", "is not renamed") & Chr$(13) & Chr$(13)
  5876.    cStartBasisTimer
  5877.    For i = 1 To ItemFile
  5878.       j = cRenameFile("XY~YX~XY.~~~", "XY-YX-XY.---")
  5879.    Next i
  5880.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  5881.    Label3.Caption = Tmp1
  5882. End Sub
  5883. Private Sub TestResizeString()
  5884.    Dim Title      As String
  5885.    Dim Tmp        As String
  5886.    Dim Tmp1       As String
  5887.    Dim Tmp2       As String
  5888.    Dim i          As Integer
  5889.    Dim j          As Integer
  5890.    Tmp = Text1.Text
  5891.    Tmp1 = Tmp & " is resized from " & Len(Tmp) & " to 5 chars " & cResizeString(Tmp, 5) & Chr$(13) & Chr$(13)
  5892.    cStartBasisTimer
  5893.    For i = 1 To Item
  5894.       Tmp2 = cResizeString(Tmp, 3)
  5895.    Next i
  5896.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  5897.    Label3.Caption = Tmp1
  5898. End Sub
  5899. Private Sub TestResizeStringAndFill()
  5900.    Dim Title      As String
  5901.    Dim Tmp        As String
  5902.    Dim Tmp1       As String
  5903.    Dim Tmp2       As String
  5904.    Dim i          As Integer
  5905.    Dim j          As Integer
  5906.    Tmp = Text1.Text
  5907.    Tmp1 = Tmp & " is resized from " & Len(Tmp) & " to 35 chars and lengthened with @ is " & Chr$(13) & Chr$(13) & cResizeStringAndFill(Tmp, 35, "@") & Chr$(13) & Chr$(13)
  5908.    cStartBasisTimer
  5909.    For i = 1 To Item
  5910.       Tmp2 = cResizeStringAndFill(Tmp, 35, "@")
  5911.    Next i
  5912.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  5913.    Label3.Caption = Tmp1
  5914. End Sub
  5915. Private Sub TestReverse()
  5916.    Dim Title      As String
  5917.    Dim Tmp        As String
  5918.    Dim Tmp1       As String
  5919.    Dim Tmp2       As String
  5920.    Dim i          As Integer
  5921.    Dim j          As Integer
  5922.    Tmp = Text1.Text
  5923.    Title = "Reverse of [" & Tmp & "] is "
  5924.    Tmp1 = Title & cReverse(Tmp) & Chr$(13) & Chr$(13)
  5925.    cStartBasisTimer
  5926.    For i = 1 To Item
  5927.       Tmp2 = cReverse(Tmp)
  5928.    Next i
  5929.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  5930.    Label3.Caption = Tmp1
  5931. End Sub
  5932. Private Sub TestReverseAllBits()
  5933.    Dim Title      As String
  5934.    Dim Tmp        As String
  5935.    Dim Tmp1       As String
  5936.    Dim Tmp2       As String
  5937.    Dim i          As Integer
  5938.    Dim j          As Integer
  5939.    Tmp = Text1.Text
  5940.    Title = "Reverse all bits of [" & Tmp & "] is "
  5941.    Call cReverseAllBits(Tmp)
  5942.    Tmp1 = Title & Tmp & Chr$(13) & Chr$(13)
  5943.    Title = "Reverse all bits of [" & Tmp & "] is "
  5944.    Call cReverseAllBits(Tmp)
  5945.    Tmp1 = Tmp1 & Title & Tmp & Chr$(13) & Chr$(13)
  5946.    cStartBasisTimer
  5947.    For i = 1 To Item
  5948.       Call cReverseAllBits(Tmp)
  5949.    Next i
  5950.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  5951.    Label3.Caption = Tmp1
  5952. End Sub
  5953. Private Sub TestReverseAllBitsByChar()
  5954.    Dim Title      As String
  5955.    Dim Tmp        As String
  5956.    Dim Tmp1       As String
  5957.    Dim Tmp2       As String
  5958.    Dim i          As Integer
  5959.    Dim j          As Integer
  5960.    Tmp = Text1.Text
  5961.    Title = "Reverse all bits by char of [" & Tmp & "] is "
  5962.    Call cReverseAllBitsByChar(Tmp)
  5963.    Tmp1 = Title & Tmp & Chr$(13) & Chr$(13)
  5964.    Title = "Reverse all bits by char of [" & Tmp & "] is "
  5965.    Call cReverseAllBitsByChar(Tmp)
  5966.    Tmp1 = Tmp1 & Title & Tmp & Chr$(13) & Chr$(13)
  5967.    cStartBasisTimer
  5968.    For i = 1 To Item
  5969.       Call cReverseAllBitsByChar(Tmp)
  5970.    Next i
  5971.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  5972.    Label3.Caption = Tmp1
  5973. End Sub
  5974. Private Sub TestReverseSortI()
  5975.    Dim Title      As String
  5976.    Dim Tmp        As String
  5977.    Dim Tmp1       As String
  5978.    Dim Tmp2       As String
  5979.    Dim i          As Integer
  5980.    Dim j          As Integer
  5981.    Dim m          As Integer
  5982.    ReDim array(ItemMean) As Integer
  5983.    Randomize Timer
  5984.    For i = LBound(array) To UBound(array)
  5985.       array(i) = RandI * Rnd(1)
  5986.       List1.AddItem "" & array(i)
  5987.    Next i
  5988.    j = cReverseSortI(array())
  5989.    For i = LBound(array) To UBound(array)
  5990.       List2.AddItem "" & array(i)
  5991.    Next i
  5992.    cStartBasisTimer
  5993.    For i = 1 To ItemFile
  5994.       j = cReverseSortI(array())
  5995.    Next i
  5996.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  5997.    Label3.Caption = Tmp1
  5998. End Sub
  5999. Private Sub TestRndX()
  6000.    Dim Title      As String
  6001.    Dim Tmp        As String
  6002.    Dim Tmp1       As String
  6003.    Dim Tmp2       As String
  6004.    Dim i          As Integer
  6005.    Dim j          As Integer
  6006.    Call cRndInit(-1)
  6007.    Tmp1 = "Some random Integer number" & Chr$(13) & Chr$(13)
  6008.    For i = 1 To 2
  6009.       Tmp1 = Tmp1 & cRndI() & Chr$(13)
  6010.    Next i
  6011.    Tmp1 = Tmp1 & Chr$(13)
  6012.    Tmp1 = Tmp1 & "Some random Long number" & Chr$(13) & Chr$(13)
  6013.    For i = 1 To 2
  6014.       Tmp1 = Tmp1 & cRndL() & Chr$(13)
  6015.    Next i
  6016.    Tmp1 = Tmp1 & Chr$(13)
  6017.    Tmp1 = Tmp1 & "Some random Single number" & Chr$(13) & Chr$(13)
  6018.    For i = 1 To 2
  6019.       Tmp1 = Tmp1 & cRndS() & Chr$(13)
  6020.    Next i
  6021.    Tmp1 = Tmp1 & Chr$(13)
  6022.    Tmp1 = Tmp1 & "Some random Double number" & Chr$(13) & Chr$(13)
  6023.    For i = 1 To 2
  6024.       Tmp1 = Tmp1 & cRndD() & Chr$(13)
  6025.    Next i
  6026.    Tmp1 = Tmp1 & Chr$(13)
  6027.    Tmp1 = Tmp1 & "Some random Double number between 0.0 and 1.0" & Chr$(13) & Chr$(13)
  6028.    For i = 1 To 2
  6029.       Tmp1 = Tmp1 & cRnd() & Chr$(13)
  6030.    Next i
  6031.    Tmp1 = Tmp1 & Chr$(13)
  6032.    cStartBasisTimer
  6033.    For i = 1 To Item
  6034.       j = cRndI()
  6035.    Next i
  6036.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  6037.    Label3.Caption = Tmp1
  6038. End Sub
  6039. Private Sub TestRtoA()
  6040.    Dim Tmp        As String
  6041.    Dim Tmp1       As String
  6042.    Tmp = UCase$(cArabicToRoman(Year(Int(Now))))
  6043.    Tmp1 = Tmp & " in Arabic is " & cRomanToArabic(LCase$(Tmp)) & Chr$(13)
  6044.    Tmp = UCase$(cArabicToRoman(Year(Int(Now)) - 1))
  6045.    Tmp1 = Tmp1 & Tmp & " in Arabic is " & cRomanToArabic(LCase$(Tmp)) & Chr$(13)
  6046.    Tmp = UCase$(cArabicToRoman(Year(Int(Now)) + 1))
  6047.    Tmp1 = Tmp1 & Tmp & " in Arabic is " & cRomanToArabic(LCase$(Tmp)) & Chr$(13)
  6048.    Label3.Caption = Tmp1
  6049. End Sub
  6050. Private Sub TestSearchI()
  6051.    Dim Title      As String
  6052.    Dim Tmp        As String
  6053.    Dim Tmp1       As String
  6054.    Dim Tmp2       As String
  6055.    Dim i          As Integer
  6056.    Dim j          As Integer
  6057.    Dim m          As Integer
  6058.    ReDim array(20) As Integer
  6059.    Call cRndInit(-1)
  6060.    For i = LBound(array) To UBound(array)
  6061.       array(i) = cRndI()
  6062.       List1.AddItem "" & array(i)
  6063.    Next i
  6064.    Tmp1 = Tmp1 & "Search '" & array(5) & "' is " & cSearchI(array(), array(5)) & Chr$(13)
  6065.    Tmp1 = Tmp1 & "Search '" & array(10) & "' is " & cSearchI(array(), array(10)) & Chr$(13)
  6066.    Tmp1 = Tmp1 & "Search '" & array(15) & "' is " & cSearchI(array(), array(15)) & Chr$(13)
  6067.    Tmp1 = Tmp1 & "Search '" & array(20) & "' is " & cSearchI(array(), array(20)) & Chr$(13)
  6068.    Tmp1 = Tmp1 & "Search '" & -1234 & "' is " & cSearchI(array(), -1234) & Chr$(13)
  6069.    cStartBasisTimer
  6070.    For i = 1 To ItemFile
  6071.       j = cSearchI(array(), array(1))
  6072.    Next i
  6073.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  6074.    Label3.Caption = Tmp1
  6075. End Sub
  6076. Private Sub TestSerial()
  6077.    Dim Tmp           As String
  6078.    Dim Tmp1          As String
  6079.    Dim getSD         As tagSERIALDATA
  6080.    Dim putSD         As tagSERIALDATA
  6081.    Dim i             As Integer
  6082.    Dim j             As Integer
  6083.    Call CreateFile
  6084.    Tmp1 = "TEST.DAT"
  6085.    Tmp = Tmp & "File '" & Tmp1 & "' is " & IIf(cIsSerial(Tmp1) = True, "serialized", "not serialized") & Chr$(13) & Chr$(13)
  6086.    putSD.Description1 = "T2WIN-16 demonstration"
  6087.    putSD.Description2 = "Under the blue sky, the sun lights"
  6088.    putSD.Number = 136
  6089.    Tmp = Tmp & "Put/Modify '" & Trim$(putSD.Description1) & "' - '" & Trim$(putSD.Description2) & "' - '" & putSD.Number & "'" & Chr$(13) & "into file '" & Tmp1 & "' is " & IIf(cSerialPut(Tmp1, putSD), "OK", "KO") & Chr$(13)
  6090.    i = cSerialGet(Tmp1, getSD)
  6091.    Tmp = Tmp & "Get from '" & Tmp1 & "' is : " & Chr$(13)
  6092.    Tmp = Tmp & "  description 1 : " & Trim$(getSD.Description1) & Chr$(13)
  6093.    Tmp = Tmp & "  description 2 : " & Trim$(getSD.Description2) & Chr$(13)
  6094.    Tmp = Tmp & "  number : " & getSD.Number & Chr$(13) & Chr$(13)
  6095.    Tmp = Tmp & "Add 2 to serialized number part into file '" & Tmp1 & "' is " & IIf(cSerialInc(Tmp1, 2), "OK", "KO") & Chr$(13)
  6096.    i = cSerialGet(Tmp1, getSD)
  6097.    Tmp = Tmp & "Get from '" & Tmp1 & "' is : " & Chr$(13)
  6098.    Tmp = Tmp & "  description 1 : " & Trim$(getSD.Description1) & Chr$(13)
  6099.    Tmp = Tmp & "  description 2 : " & Trim$(getSD.Description2) & Chr$(13)
  6100.    Tmp = Tmp & "  number : " & getSD.Number & Chr$(13) & Chr$(13)
  6101.    Tmp = Tmp & "Substract 9 to serialized number part into file '" & Tmp1 & "' is " & IIf(cSerialInc(Tmp1, -9), "OK", "KO") & Chr$(13)
  6102.    i = cSerialGet(Tmp1, getSD)
  6103.    Tmp = Tmp & "Get from '" & Tmp1 & "' is : " & Chr$(13)
  6104.    Tmp = Tmp & "  description 1 : " & Trim$(getSD.Description1) & Chr$(13)
  6105.    Tmp = Tmp & "  description 2 : " & Trim$(getSD.Description2) & Chr$(13)
  6106.    Tmp = Tmp & "  number : " & getSD.Number & Chr$(13) & Chr$(13)
  6107.    Tmp = Tmp & "File '" & Tmp1 & "' is " & IIf(cIsSerial(Tmp1) = True, "serialized", "not serialized") & Chr$(13) & Chr$(13)
  6108.    cStartBasisTimer
  6109.    For i = 1 To ItemFile
  6110.       j = cSerialGet(Tmp1, getSD)
  6111.    Next i
  6112.    Tmp = Tmp & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  6113.    Label3.Caption = Tmp
  6114. End Sub
  6115. Private Sub TestSetAllBits()
  6116.    Dim Title      As String
  6117.    Dim Tmp        As String
  6118.    Dim Tmp1       As String
  6119.    Dim Tmp2       As String
  6120.    Dim i          As Integer
  6121.    Dim j          As Integer
  6122.    Tmp = Text1.Text
  6123.    Title = "Set all bits of [" & Tmp & "] on True is "
  6124.    Call cSetAllBits(Tmp, True)
  6125.    Tmp1 = Title & "[" & Tmp & "] " & Chr$(13) & Chr$(13)
  6126.    Title = "Set all bits of [" & Tmp & "] on False is "
  6127.    Call cSetAllBits(Tmp, False)
  6128.    Tmp1 = Tmp1 & Title & "[" & Tmp & "] " & Chr$(13) & Chr$(13)
  6129.    cStartBasisTimer
  6130.    For i = 1 To Item
  6131.       Call cSetAllBits(Tmp, True)
  6132.    Next i
  6133.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  6134.    Label3.Caption = Tmp1
  6135. End Sub
  6136. Private Sub TestSetBit()
  6137.    Dim Title      As String
  6138.    Dim Tmp        As String
  6139.    Dim Tmp1       As String
  6140.    Dim Tmp2       As String
  6141.    Dim i          As Integer
  6142.    Dim j          As Integer
  6143.    Tmp = Text1.Text
  6144.    Title = "Set bit 0,5,3 of [" & Tmp & "] on True is "
  6145.    Call cSetBit(Tmp, 0, True)
  6146.    Call cSetBit(Tmp, 5, True)
  6147.    Call cSetBit(Tmp, 3, True)
  6148.    Tmp1 = Tmp1 & Title & "[" & Tmp & "] " & Chr$(13) & Chr$(13)
  6149.    Title = "Set bit 22,30,38 of [" & Tmp & "] on False is "
  6150.    Call cSetBit(Tmp, 22, False)
  6151.    Call cSetBit(Tmp, 30, False)
  6152.    Call cSetBit(Tmp, 38, False)
  6153.    Tmp1 = Tmp1 & Title & "[" & Tmp & "] " & Chr$(13) & Chr$(13)
  6154.    Title = "Set bit 0,5,3 of [" & Tmp & "] on False is "
  6155.    Call cSetBit(Tmp, 0, False)
  6156.    Call cSetBit(Tmp, 5, False)
  6157.    Call cSetBit(Tmp, 3, False)
  6158.    Tmp1 = Tmp1 & Title & "[" & Tmp & "] " & Chr$(13) & Chr$(13)
  6159.    Title = "Set bit 22,30,38 of [" & Tmp & "] on True is "
  6160.    Call cSetBit(Tmp, 22, True)
  6161.    Call cSetBit(Tmp, 30, True)
  6162.    Call cSetBit(Tmp, 38, True)
  6163.    Tmp1 = Tmp1 & Title & "[" & Tmp & "] " & Chr$(13) & Chr$(13)
  6164.    cStartBasisTimer
  6165.    For i = 1 To Item
  6166.       Call cSetBit(Tmp, 7, True)
  6167.    Next i
  6168.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  6169.    Label3.Caption = Tmp1
  6170. End Sub
  6171. Private Sub TestSetI()
  6172.    Dim Title      As String
  6173.    Dim Tmp        As String
  6174.    Dim Tmp1       As String
  6175.    Dim Tmp2       As String
  6176.    Dim i          As Integer
  6177.    Dim j          As Integer
  6178.    Dim m          As Double
  6179.    ReDim array(ItemMean) As Integer
  6180.    Randomize Timer
  6181.    For i = LBound(array) To UBound(array)
  6182.       array(i) = 0
  6183.       List1.AddItem "" & array(i)
  6184.    Next i
  6185.    j = cSetI(array(), 1024)
  6186.    For i = LBound(array) To UBound(array)
  6187.       List2.AddItem "" & array(i)
  6188.    Next i
  6189.    Tmp1 = Tmp1 & "Set 1024 to element 1 of an integer array is : " & array(1) & Chr$(13) & Chr$(13)
  6190.    Tmp1 = Tmp1 & "Set 1024 to element " & ItemMean & " of an integer array is : " & array(ItemMean) & Chr$(13) & Chr$(13)
  6191.    cStartBasisTimer
  6192.    For i = 1 To ItemFile
  6193.       j = cSetI(array(), 1.11)
  6194.    Next i
  6195.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  6196.    Label3.Caption = Tmp1
  6197. End Sub
  6198. Private Sub TestSortI()
  6199.    Dim Title      As String
  6200.    Dim Tmp        As String
  6201.    Dim Tmp1       As String
  6202.    Dim Tmp2       As String
  6203.    Dim i          As Integer
  6204.    Dim j          As Integer
  6205.    Dim m          As Integer
  6206.    ReDim array(ItemMean) As Integer
  6207.    Randomize Timer
  6208.    For i = LBound(array) To UBound(array)
  6209.       array(i) = RandI * Rnd(1)
  6210.       List1.AddItem "" & array(i)
  6211.    Next i
  6212.    j = cSortI(array())
  6213.    For i = LBound(array) To UBound(array)
  6214.       List2.AddItem "" & array(i)
  6215.    Next i
  6216.    cStartBasisTimer
  6217.    For i = 1 To ItemFile
  6218.       j = cSortI(array())
  6219.    Next i
  6220.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  6221.    Label3.Caption = Tmp1
  6222. End Sub
  6223. Private Sub TestSpellMoney()
  6224.    Dim Title      As String
  6225.    Dim Tmp        As String
  6226.    Dim Tmp1       As String
  6227.    Dim Tmp2       As String
  6228.    Dim i          As Integer
  6229.    Dim j          As Integer
  6230.    Dim Units      As String
  6231.    Dim Cents      As String
  6232.    Units = "dollars"
  6233.    Cents = "cents"
  6234.    Tmp1 = "Spelling the following money value " & Chr$(13) & Chr$(13)
  6235.    Tmp1 = Tmp1 & "4.12 is '" & cSpellMoney(4.12, Units, Cents) & "'" & Chr$(13) & Chr$(13)
  6236.    Tmp1 = Tmp1 & "16 is '" & cSpellMoney(16, Units, Cents) & "'" & Chr$(13) & Chr$(13)
  6237.    Tmp1 = Tmp1 & "25 is '" & cSpellMoney(25, Units, Cents) & "'" & Chr$(13) & Chr$(13)
  6238.    Tmp1 = Tmp1 & "34 is '" & cSpellMoney(34, Units, Cents) & "'" & Chr$(13) & Chr$(13)
  6239.    Tmp1 = Tmp1 & "43 is '" & cSpellMoney(43, Units, Cents) & "'" & Chr$(13) & Chr$(13)
  6240.    Tmp1 = Tmp1 & "61 is '" & cSpellMoney(61, Units, Cents) & "'" & Chr$(13) & Chr$(13)
  6241.    Tmp1 = Tmp1 & "98765.43 is '" & cSpellMoney(98765.43, Units, Cents) & "'" & Chr$(13) & Chr$(13)
  6242.    Tmp1 = Tmp1 & "123456789.75 is '" & cSpellMoney(123456789.75, Units, Cents) & "'" & Chr$(13) & Chr$(13)
  6243.    cStartBasisTimer
  6244.    For i = 1 To Item
  6245.       Tmp2 = cSpellMoney(12.34, Units, Cents)
  6246.    Next i
  6247.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  6248.    Label3.Caption = Tmp1
  6249. End Sub
  6250. Private Sub TestSplitPath()
  6251.    Dim Title      As String
  6252.    Dim Tmp        As String
  6253.    Dim Tmp1       As String
  6254.    Dim Tmp2       As String
  6255.    Dim Tmp3       As String
  6256.    Dim i          As Integer
  6257.    Dim N          As Integer
  6258.    Dim j          As Long
  6259.    Dim SPLITPATH  As tagSPLITPATH
  6260.    Tmp1 = ""
  6261.    Tmp = "C:\AUTOEXEC.BAT"
  6262.    Tmp1 = Tmp1 & "Split Path " & Tmp & " into four components is :" & Chr$(13) & Chr$(13)
  6263.    N = cSplitPath(Tmp, SPLITPATH)
  6264.    Tmp1 = Tmp1 & Space$(3) & SPLITPATH.nDrive & Chr$(13)
  6265.    Tmp1 = Tmp1 & Space$(3) & SPLITPATH.nDir & Chr$(13)
  6266.    Tmp1 = Tmp1 & Space$(3) & SPLITPATH.nName & Chr$(13)
  6267.    Tmp1 = Tmp1 & Space$(3) & SPLITPATH.nExt & Chr$(13) & Chr$(13)
  6268.    Tmp = cGetSystemDirectory() & "\t2win-16.dll"
  6269.    Tmp1 = Tmp1 & "Split Path " & Tmp & " into four components is :" & Chr$(13) & Chr$(13)
  6270.    N = cSplitPath(Tmp, SPLITPATH)
  6271.    Tmp1 = Tmp1 & Space$(3) & SPLITPATH.nDrive & Chr$(13)
  6272.    Tmp1 = Tmp1 & Space$(3) & SPLITPATH.nDir & Chr$(13)
  6273.    Tmp1 = Tmp1 & Space$(3) & SPLITPATH.nName & Chr$(13)
  6274.    Tmp1 = Tmp1 & Space$(3) & SPLITPATH.nExt & Chr$(13) & Chr$(13)
  6275.    cStartBasisTimer
  6276.    For i = 1 To Item
  6277.       N = cSplitPath(Tmp, SPLITPATH)
  6278.    Next i
  6279.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  6280.    Label3.Caption = Tmp1
  6281. End Sub
  6282. Private Sub TestStringCompress()
  6283.    Dim Title      As String
  6284.    Dim Tmp        As String
  6285.    Dim Tmp1       As String
  6286.    Dim Tmp2       As String
  6287.    Dim Tmp3       As String
  6288.    Dim i          As Integer
  6289.    Dim j          As Long
  6290.    Tmp1 = ""
  6291.    Tmp = "T2WIN-16, T2WIN-16, T2WIN-16, T2WIN-16"
  6292.    Tmp2 = cStringCompress(Tmp)
  6293.    Tmp3 = cStringExpand(Tmp2)
  6294.    Tmp1 = Tmp1 & "String Compress '" & Tmp & "' is " & Format$(Len(Tmp)) & " to " & Format$(Len(Tmp2)) & " bytes." & Chr$(13)
  6295.    Tmp1 = Tmp1 & "String Expand is '" & Tmp3 & "'" & Chr$(13)
  6296.    Tmp1 = Tmp1 & "Compare string contents (not sensitive) is " & IIf(LCase$(Tmp) = LCase$(Tmp3), "same", "not same") & Chr$(13) & Chr$(13)
  6297.    cStartBasisTimer
  6298.    For i = 1 To Item
  6299.       Tmp2 = cStringCompress(Tmp)
  6300.    Next i
  6301.    Tmp3 = cStringExpand(Tmp2)
  6302.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  6303.    Label3.Caption = Tmp1
  6304. End Sub
  6305. Private Sub TestStringCRC32()
  6306.    Dim Title      As String
  6307.    Dim Tmp        As String
  6308.    Dim Tmp1       As String
  6309.    Dim Tmp2       As String
  6310.    Dim i          As Integer
  6311.    Dim j          As Integer
  6312.    Dim k          As Long
  6313.    Tmp = Text1.Text
  6314.    Title = "CRC32 for string [" & Tmp & "] is "
  6315.    Tmp1 = Title & Hex$(cStringCRC32(Tmp)) & Chr$(13) & Chr$(13)
  6316.    Title = "CRC32 for string [" & cReverse(Tmp) & "] is "
  6317.    Tmp1 = Tmp1 & Title & Hex$(cStringCRC32(cReverse(Tmp))) & Chr$(13) & Chr$(13)
  6318.    Title = "CRC32 for string [" & LCase$(Tmp) & "] is "
  6319.    Tmp1 = Tmp1 & Title & Hex$(cStringCRC32(LCase$(Tmp))) & Chr$(13) & Chr$(13)
  6320.    Title = "CRC32 for string [" & LCase$(cReverse(Tmp)) & "] is "
  6321.    Tmp1 = Tmp1 & Title & Hex$(cStringCRC32(LCase$(cReverse(Tmp)))) & Chr$(13) & Chr$(13)
  6322.    cStartBasisTimer
  6323.    For i = 1 To Item
  6324.       k = cStringCRC32(Tmp)
  6325.    Next i
  6326.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  6327.    Label3.Caption = Tmp1
  6328. End Sub
  6329. Private Sub TestStringSAR()
  6330.    Dim Title      As String
  6331.    Dim Tmp        As String
  6332.    Dim Tmp1       As String
  6333.    Dim Tmp2       As String
  6334.    Dim Tmp3       As String
  6335.    Dim i          As Integer
  6336.    Dim j          As Long
  6337.    Tmp1 = ""
  6338.    Tmp = "T2WIN-16, T2WIN-16, T2WIN-16, T2WIN-16 IS A DLL"
  6339.    Tmp2 = cStringSAR(Tmp, "T2WIN-16", "t2win-16", False)
  6340.    Tmp1 = Tmp1 & "Replace 'T2WIN-16' by 't2win-16'" & Chr$(13)
  6341.    Tmp1 = Tmp1 & "     in" & Chr$(13)
  6342.    Tmp1 = Tmp1 & Tmp & Chr$(13)
  6343.    Tmp1 = Tmp1 & "     is" & Chr$(13)
  6344.    Tmp1 = Tmp1 & Tmp2 & Chr$(13) & Chr$(13)
  6345.    Tmp2 = cStringSAR(Tmp, " TO ", "2", True)
  6346.    Tmp1 = Tmp1 & "Replace ' TO ' by '2'" & Chr$(13)
  6347.    Tmp1 = Tmp1 & "     in" & Chr$(13)
  6348.    Tmp1 = Tmp1 & Tmp & Chr$(13)
  6349.    Tmp1 = Tmp1 & "     is" & Chr$(13)
  6350.    Tmp1 = Tmp1 & Tmp2 & Chr$(13) & Chr$(13)
  6351.    Tmp2 = cStringSAR(Tmp, "T2WIN-16, ", "", True)
  6352.    Tmp1 = Tmp1 & "Replace 'T2WIN-16, ' by ''" & Chr$(13)
  6353.    Tmp1 = Tmp1 & "     in" & Chr$(13)
  6354.    Tmp1 = Tmp1 & Tmp & Chr$(13)
  6355.    Tmp1 = Tmp1 & "     is" & Chr$(13)
  6356.    Tmp1 = Tmp1 & Tmp2 & Chr$(13) & Chr$(13)
  6357.    Tmp2 = cStringSAR(Tmp, "I", "i", False)
  6358.    Tmp1 = Tmp1 & "Replace 'I' by 'i'" & Chr$(13)
  6359.    Tmp1 = Tmp1 & "     in" & Chr$(13)
  6360.    Tmp1 = Tmp1 & Tmp & Chr$(13)
  6361.    Tmp1 = Tmp1 & "     is" & Chr$(13)
  6362.    Tmp1 = Tmp1 & Tmp2 & Chr$(13) & Chr$(13)
  6363.    cStartBasisTimer
  6364.    For i = 1 To Item
  6365.       Tmp2 = cStringSAR(Tmp, "T2WIN-16", "t2win-16", False)
  6366.    Next i
  6367.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  6368.    Label3.Caption = Tmp1
  6369. End Sub
  6370. Private Sub TestSubDirectory()
  6371.    Dim Title      As String
  6372.    Dim Tmp        As String
  6373.    Dim Tmp1       As String
  6374.    Dim Tmp2       As String
  6375.    Dim i          As Integer
  6376.    Dim j          As Integer
  6377.    Dim k          As Long
  6378.    Title = "The 7 first directories in this directory are" & Chr$(13) & Chr$(13)
  6379.    Tmp1 = Title
  6380.    Tmp2 = cSubDirectory("*.*", True)
  6381.    For i = 1 To 7
  6382.       Tmp1 = Tmp1 & Tmp2 & Chr$(13)
  6383.       Tmp2 = cSubDirectory("*.*", False)
  6384.    Next i
  6385.    Tmp1 = Tmp1 & Chr$(13)
  6386.    cStartBasisTimer
  6387.    For i = 1 To Item
  6388.       Tmp = cSubDirectory("*.*", True)
  6389.    Next i
  6390.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  6391.    Label3.Caption = Tmp1
  6392. End Sub
  6393. Private Sub TestSumI()
  6394.    Dim Title      As String
  6395.    Dim Tmp        As String
  6396.    Dim Tmp1       As String
  6397.    Dim Tmp2       As String
  6398.    Dim i          As Integer
  6399.    Dim j          As Integer
  6400.    Dim m          As Double
  6401.    ReDim array(ItemMean) As Integer
  6402.    Randomize Timer
  6403.    m = 0
  6404.    For i = LBound(array) To UBound(array)
  6405.       array(i) = Int(RandI * Rnd(1))
  6406.       m = m + array(i)
  6407.       List1.AddItem "" & array(i)
  6408.    Next i
  6409.    Tmp1 = "The Sum of a integer array of " & (ItemMean + 1) & " elements is " & Chr$(13) & Chr$(13) & cSumI(array()) & " (" & m & ")" & Chr$(13) & Chr$(13)
  6410.    cStartBasisTimer
  6411.    For i = 1 To ItemFile
  6412.       m = cSumI(array())
  6413.    Next i
  6414.    Tmp1 = Tmp1 & "speed for " & ItemFile & " = " & cReadBasisTimer() & " ms"
  6415.    Label3.Caption = Tmp1
  6416. End Sub
  6417. Private Sub TestSwap()
  6418.    Dim Title      As String
  6419.    Dim Tmp        As String
  6420.    Dim Tmp1       As String
  6421.    Dim Tmp2       As String
  6422.    Dim i          As Integer
  6423.    Dim j          As Long
  6424.    Dim i1         As Integer
  6425.    Dim i2         As Integer
  6426.    Dim s1         As String
  6427.    Dim s2         As String
  6428.    i1 = 3276
  6429.    i2 = 12345
  6430.    s1 = "Hello"
  6431.    s2 = "World"
  6432.    Tmp1 = "SwapI of [" & i1 & "," & i2 & "] is "
  6433.    Call cSwapI(i1, i2)
  6434.    Tmp1 = Tmp1 + "[" & i1 & "," & i2 & "]" & Chr$(13)
  6435.    Tmp1 = Tmp1 + "SwapI of [" & i1 & "," & i2 & "] is "
  6436.    Call cSwapI(i1, i2)
  6437.    Tmp1 = Tmp1 + "[" & i1 & "," & i2 & "]" & Chr$(13)
  6438.    Tmp1 = Tmp1 + "SwapStr of [" & s1 & "," & s2 & "] is "
  6439.    Call cSwapStr(s1, s2)
  6440.    Tmp1 = Tmp1 + "[" & s1 & "," & s2 & "]" & Chr$(13)
  6441.    Tmp1 = Tmp1 + "SwapStr of [" & s1 & "," & s2 & "] is "
  6442.    Call cSwapStr(s1, s2)
  6443.    Tmp1 = Tmp1 + "[" & s1 & "," & s2 & "]" & Chr$(13)
  6444.    cStartBasisTimer
  6445.    For i = 1 To Item
  6446.       Call cSwapI(i1, i2)
  6447.    Next i
  6448.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  6449.    Label3.Caption = Tmp1
  6450. End Sub
  6451. Private Sub TestSysMenuChange(Language As Integer)
  6452.    Call cLngSysMenu(Language, Me.hWnd)
  6453. End Sub
  6454. Private Sub TestTime()
  6455.    Dim Tmp1       As String
  6456.    Dim i          As Integer
  6457.    Dim nNow       As Long
  6458.    Dim nHour      As Integer
  6459.    Dim nMinute    As Integer
  6460.    Dim nSecond    As Integer
  6461.    nHour = Hour(Now)
  6462.    nMinute = Minute(Now)
  6463.    nSecond = Second(Now)
  6464.    nNow = cTimeToScalar(nHour, nMinute, nSecond)
  6465.    Tmp1 = Tmp1 & "Now scalar time is '" & nNow & "'" & Chr$(13)
  6466.    nHour = 0
  6467.    nMinute = 0
  6468.    nSecond = 0
  6469.    Call cScalarToTime(nNow, nHour, nMinute, nSecond)
  6470.    Tmp1 = Tmp1 & "Hour : " & nHour & ", Minute : " & nMinute & ", Second : " & nSecond & Chr$(13) & Chr$(13)
  6471.    nNow = cTimeToScalar(32767, 59, 59)
  6472.    Tmp1 = Tmp1 & "Maximum scalar time is '" & nNow & "'" & Chr$(13)
  6473.    nHour = 0
  6474.    nMinute = 0
  6475.    nSecond = 0
  6476.    Call cScalarToTime(nNow, nHour, nMinute, nSecond)
  6477.    Tmp1 = Tmp1 & "Hour : " & nHour & ", Minute : " & nMinute & ", Second : " & nSecond & Chr$(13) & Chr$(13)
  6478.    cStartBasisTimer
  6479.    For i = 1 To Item
  6480.       nNow = cTimeToScalar(nHour, nMinute, nSecond)
  6481.    Next i
  6482.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  6483.    Label3.Caption = Tmp1
  6484. End Sub
  6485. Private Sub TestTimeBetween()
  6486.    Dim Title      As String
  6487.    Dim Tmp        As String
  6488.    Dim Tmp1       As String
  6489.    Dim Tmp2       As String
  6490.    Dim i          As Integer
  6491.    Dim j          As Integer
  6492.    Tmp1 = "The time between 10:00 and 12:01 is " & cTimeBetween(600, 721) & " minutes" & Chr$(13) & Chr$(13)
  6493.    Tmp1 = Tmp1 & "The time between 23:58 and 01:02 is " & cTimeBetween(1438, 62) & " minutes" & Chr$(13) & Chr$(13)
  6494.    cStartBasisTimer
  6495.    For i = 1 To Item
  6496.       j = cTimeBetween(0, 1439)
  6497.    Next i
  6498.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  6499.    Label3.Caption = Tmp1
  6500. End Sub
  6501. Private Sub TestTimer()
  6502.    Dim Tmp1          As String
  6503.    Dim Tmp           As String
  6504.    Dim Tmp2          As String
  6505.    Dim i             As Integer
  6506.    Dim j             As Integer
  6507.    Dim k             As Long
  6508.    Dim TimerHandle   As Integer
  6509.    Dim StartOk       As Integer
  6510.    Dim CloseOk       As Integer
  6511.    Tmp1 = "BASIS TIMER" & Chr$(13) & Chr$(13)
  6512.    Tmp1 = Tmp1 & "The elapsed time for a empty loop of 32766 iterations is "
  6513.    cStartBasisTimer
  6514.    For i = 1 To 32766
  6515.    Next i
  6516.    Tmp1 = Tmp1 & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  6517.    Tmp1 = Tmp1 & "The elapsed time for a integer loop of 32766 iterations is "
  6518.    j = 0
  6519.    cStartBasisTimer
  6520.    For i = 1 To 32766
  6521.       j = j + 1
  6522.    Next i
  6523.    Tmp1 = Tmp1 & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  6524.    Tmp1 = Tmp1 & "The elapsed time for a long loop of 32766 iterations is "
  6525.    k = 0
  6526.    cStartBasisTimer
  6527.    For i = 1 To 32766
  6528.       k = i * 2&
  6529.    Next i
  6530.    Tmp1 = Tmp1 & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  6531.    Tmp1 = Tmp1 & "The elapsed time for a string loop of 1000 iterations is "
  6532.    cStartBasisTimer
  6533.    For i = 1 To 1000
  6534.       Tmp2 = Tmp2 + "a"
  6535.    Next i
  6536.    Tmp1 = Tmp1 & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  6537.    Call cStartBasisTimer
  6538.    StartOk = cSleep(1000)
  6539.    Tmp1 = Tmp1 & "True time for 1 wait second is " & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  6540.    TimerHandle = cTimerOpen()
  6541.    Tmp1 = Tmp1 & "EXTENDED TIMER (handle is '" & TimerHandle & "')" & Chr$(13) & Chr$(13)
  6542.    Tmp1 = Tmp1 & "The elapsed time for a empty loop of 32766 iterations is "
  6543.    StartOk = cTimerStart(TimerHandle)
  6544.    For i = 1 To 32766
  6545.    Next i
  6546.    Tmp1 = Tmp1 & cTimerRead(TimerHandle) & " ms" & Chr$(13) & Chr$(13)
  6547.    Tmp1 = Tmp1 & "The elapsed time for a integer loop of 32766 iterations is "
  6548.    j = 0
  6549.    StartOk = cTimerStart(TimerHandle)
  6550.    For i = 1 To 32766
  6551.       j = j + 1
  6552.    Next i
  6553.    Tmp1 = Tmp1 & cTimerRead(TimerHandle) & " ms" & Chr$(13) & Chr$(13)
  6554.    Tmp1 = Tmp1 & "The elapsed time for a long loop of 32766 iterations is "
  6555.    k = 0
  6556.    StartOk = cTimerStart(TimerHandle)
  6557.    For i = 1 To 32766
  6558.       k = i * 2&
  6559.    Next i
  6560.    Tmp1 = Tmp1 & cTimerRead(TimerHandle) & " ms" & Chr$(13) & Chr$(13)
  6561.    Tmp1 = Tmp1 & "The elapsed time for a string loop of 1000 iterations is "
  6562.    StartOk = cTimerStart(TimerHandle)
  6563.    For i = 1 To 1000
  6564.       Tmp2 = Tmp2 + "a"
  6565.    Next i
  6566.    Tmp1 = Tmp1 & cTimerRead(TimerHandle) & " ms" & Chr$(13) & Chr$(13)
  6567.    StartOk = cTimerStart(TimerHandle)
  6568.    StartOk = cSleep(1000)
  6569.    Tmp1 = Tmp1 & "True time for 1 wait second is " & cTimerRead(TimerHandle) & " ms" & Chr$(13) & Chr$(13)
  6570.    Label3.Caption = Tmp1
  6571.    CloseOk = cTimerClose(TimerHandle)
  6572. End Sub
  6573. Private Sub TestToggleAllBits()
  6574.    Dim Title      As String
  6575.    Dim Tmp        As String
  6576.    Dim Tmp1       As String
  6577.    Dim Tmp2       As String
  6578.    Dim i          As Integer
  6579.    Dim j          As Integer
  6580.    Tmp = Text1.Text
  6581.    Title = "Toggle all bits of [" & Tmp & "] is "
  6582.    Call cToggleAllBits(Tmp)
  6583.    Tmp1 = Title & "[" & Tmp & "] " & Chr$(13) & Chr$(13)
  6584.    Title = "Toggle all bits of [" & Tmp & "] is "
  6585.    Call cToggleAllBits(Tmp)
  6586.    Tmp1 = Tmp1 & Title & "[" & Tmp & "] " & Chr$(13) & Chr$(13)
  6587.    cStartBasisTimer
  6588.    For i = 1 To Item
  6589.       Call cToggleAllBits(Tmp)
  6590.    Next i
  6591.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  6592.    Label3.Caption = Tmp1
  6593. End Sub
  6594. Private Sub TestToggleBit()
  6595.    Dim Title      As String
  6596.    Dim Tmp        As String
  6597.    Dim Tmp1       As String
  6598.    Dim Tmp2       As String
  6599.    Dim i          As Integer
  6600.    Dim j          As Integer
  6601.    Tmp = Text1.Text
  6602.    Title = "Toggle bit 7,22,15 of [" & Tmp & "] is "
  6603.    Call cToggleBit(Tmp, 7)
  6604.    Call cToggleBit(Tmp, 22)
  6605.    Call cToggleBit(Tmp, 15)
  6606.    Tmp1 = Title & "[" & Tmp & "] " & Chr$(13) & Chr$(13)
  6607.    Title = "Toggle bit 7,22,15 of [" & Tmp & "] is "
  6608.    Call cToggleBit(Tmp, 7)
  6609.    Call cToggleBit(Tmp, 22)
  6610.    Call cToggleBit(Tmp, 15)
  6611.    Tmp1 = Tmp1 & Title & "[" & Tmp & "] " & Chr$(13) & Chr$(13)
  6612.    cStartBasisTimer
  6613.    For i = 1 To Item
  6614.       Call cToggleBit(Tmp, i)
  6615.    Next i
  6616.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  6617.    Label3.Caption = Tmp1
  6618. End Sub
  6619. Private Sub TestToken()
  6620.    Dim Title      As String
  6621.    Dim Tmp        As String
  6622.    Dim Tmp1       As String
  6623.    Dim Tmp2       As String
  6624.    Dim i          As Integer
  6625.    Dim j          As Integer
  6626.    Tmp = "A/BC\DEF=GHIJ?KLMNO:PQRSTUV"
  6627.    Title = "The 2,4,1,5 blocks of [" & Tmp & "] separated by any one of '/\=?' are " & Chr$(13)
  6628.    Tmp1 = Title & "  2:" & cTokenIn(Tmp, "/\=?", 2) & Chr$(13) & "  4:" & cTokenIn(Tmp, "/\=?", 4) & Chr$(13) & "  1:" & cTokenIn(Tmp, "/\=?", 1) & Chr$(13) & "  5:" & cTokenIn(Tmp, "/\=?", 5) & Chr$(13) & Chr$(13)
  6629.    cStartBasisTimer
  6630.    For i = 1 To Item
  6631.       Tmp2 = cTokenIn(Tmp, "/\=?", 2)
  6632.    Next i
  6633.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  6634.    Label3.Caption = Tmp1
  6635. End Sub
  6636. Private Sub TestTrueBetween()
  6637.    Dim Title      As String
  6638.    Dim Tmp        As String
  6639.    Dim Tmp1       As String
  6640.    Dim Tmp2       As String
  6641.    Dim i          As Integer
  6642.    Dim j          As Integer
  6643.    Tmp1 = "601 is not true between 720 and 840 => " & cTrueBetween(601, 720, 840) & Chr$(13) & Chr$(13)
  6644.    Tmp1 = Tmp1 & "601 is true between 540 and 602 => " & cTrueBetween(601, 540, 602) & Chr$(13) & Chr$(13)
  6645.    Tmp1 = Tmp1 & "61 is not true between 61 and 62 => " & cTrueBetween(61, 61, 62) & Chr$(13) & Chr$(13)
  6646.    cStartBasisTimer
  6647.    For i = 1 To Item
  6648.       j = cTrueBetween(720, 0, 1439)
  6649.    Next i
  6650.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  6651.    Label3.Caption = Tmp1
  6652. End Sub
  6653. Private Sub TestTruncatePath()
  6654.    Dim Title      As String
  6655.    Dim Tmp        As String
  6656.    Dim Tmp1       As String
  6657.    Dim Tmp2       As String
  6658.    Dim Tmp3       As String
  6659.    Dim i          As Integer
  6660.    Dim j          As Long
  6661.    Tmp1 = ""
  6662.    Tmp1 = Tmp1 & "Truncate the following path with a length of 25" & Chr$(13) & Chr$(13)
  6663.    Tmp = "t2win-16.bas"
  6664.    Tmp2 = cTruncatePath(Tmp, 25)
  6665.    Tmp1 = Tmp1 & Tmp & Chr$(13) & " -> " & Tmp2 & "  (len=" & Len(Tmp2) & ")" & Chr$(13)
  6666.    Tmp = "windows\system\t2win-16.bas"
  6667.    Tmp2 = cTruncatePath(Tmp, 25)
  6668.    Tmp1 = Tmp1 & Tmp & Chr$(13) & " -> " & Tmp2 & "  (len=" & Len(Tmp2) & ")" & Chr$(13)
  6669.    Tmp = "c:\windows\system\t2win-16.bas"
  6670.    Tmp2 = cTruncatePath(Tmp, 25)
  6671.    Tmp1 = Tmp1 & Tmp & Chr$(13) & " -> " & Tmp2 & "  (len=" & Len(Tmp2) & ")" & Chr$(13)
  6672.    Tmp = "c:\windows\system\visual\t2win-16\t2win-16.bas"
  6673.    Tmp2 = cTruncatePath(Tmp, 25)
  6674.    Tmp1 = Tmp1 & Tmp & Chr$(13) & " -> " & Tmp2 & "  (len=" & Len(Tmp2) & ")" & Chr$(13)
  6675.    Tmp = "c:\windows\system\visual\source\t2win-16\t2win-16.bas"
  6676.    Tmp2 = cTruncatePath(Tmp, 25)
  6677.    Tmp1 = Tmp1 & Tmp & Chr$(13) & " -> " & Tmp2 & "  (len=" & Len(Tmp2) & ")" & Chr$(13) & Chr$(13)
  6678.    Tmp1 = Tmp1 & "Truncate the following path with a length of 35" & Chr$(13) & Chr$(13)
  6679.    Tmp = "t2win-16.bas"
  6680.    Tmp2 = cTruncatePath(Tmp, 35)
  6681.    Tmp1 = Tmp1 & Tmp & Chr$(13) & " -> " & Tmp2 & "  (len=" & Len(Tmp2) & ")" & Chr$(13)
  6682.    Tmp = "windows\system\t2win-16.bas"
  6683.    Tmp2 = cTruncatePath(Tmp, 35)
  6684.    Tmp1 = Tmp1 & Tmp & Chr$(13) & " -> " & Tmp2 & "  (len=" & Len(Tmp2) & ")" & Chr$(13)
  6685.    Tmp = "c:\windows\system\t2win-16.bas"
  6686.    Tmp2 = cTruncatePath(Tmp, 35)
  6687.    Tmp1 = Tmp1 & Tmp & Chr$(13) & " -> " & Tmp2 & "  (len=" & Len(Tmp2) & ")" & Chr$(13)
  6688.    Tmp = "c:\windows\system\visual\t2win-16\t2win-16.bas"
  6689.    Tmp2 = cTruncatePath(Tmp, 35)
  6690.    Tmp1 = Tmp1 & Tmp & Chr$(13) & " -> " & Tmp2 & "  (len=" & Len(Tmp2) & ")" & Chr$(13)
  6691.    Tmp = "c:\windows\system\visual\source\t2win-16\t2win-16.bas"
  6692.    Tmp2 = cTruncatePath(Tmp, 35)
  6693.    Tmp1 = Tmp1 & Tmp & Chr$(13) & " -> " & Tmp2 & "  (len=" & Len(Tmp2) & ")" & Chr$(13) & Chr$(13)
  6694.    cStartBasisTimer
  6695.    For i = 1 To Item
  6696.       Tmp2 = cTruncatePath(Tmp, 25)
  6697.    Next i
  6698.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms" & Chr$(13) & Chr$(13)
  6699.    Label3.Caption = Tmp1
  6700. End Sub
  6701. Private Sub TestUncompact()
  6702.    Dim Title      As String
  6703.    Dim Tmp        As String
  6704.    Dim Tmp1       As String
  6705.    Dim Tmp2       As String
  6706.    Dim i          As Integer
  6707.    Dim j          As Integer
  6708.    Tmp = "987654321"
  6709.    Title = "Uncompact '" & Tmp & "' is "
  6710.    Tmp1 = Title & cUncompact(Tmp) & Chr$(13) & Chr$(13)
  6711.    cStartBasisTimer
  6712.    For i = 1 To Item
  6713.       Tmp2 = cUncompact(Tmp)
  6714.    Next i
  6715.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  6716.    Label3.Caption = Tmp1
  6717. End Sub
  6718. Private Sub TestUniqueFileName()
  6719.    Dim Title      As String
  6720.    Dim Tmp        As String
  6721.    Dim Tmp1       As String
  6722.    Dim Tmp2       As String
  6723.    Dim i          As Integer
  6724.    Dim j          As Integer
  6725.    Tmp1 = "Generate unique filename with template WN is " & cUniqueFileName("WN") & Chr$(13) & Chr$(13)
  6726.    cStartBasisTimer
  6727.    For i = 1 To Item
  6728.       Tmp2 = cUniqueFileName("WN")
  6729.    Next i
  6730.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  6731.    Label3.Caption = Tmp1
  6732. End Sub
  6733. Private Sub TestVersion()
  6734.    Dim Tmp        As String
  6735.    Dim Version    As Single
  6736.    Version = cGetVersion()
  6737.    Tmp = Tmp + "Version is " & Version
  6738.    Label3.Caption = Tmp
  6739. End Sub
  6740. Private Sub TestWalkThruWindow()
  6741.    Dim nClass        As String
  6742.    Dim nCaption      As String
  6743.    Dim nOwnerClass   As String
  6744.    Dim nOwnerCaption As String
  6745.    Dim nOwnerHwnd    As Integer
  6746.    Dim nhWnd         As Integer
  6747.    Dim i             As Integer
  6748.    Frame1.Visible = True
  6749.    List1.Clear
  6750.    List2.Clear
  6751.    List1.FontBold = False
  6752.    List2.FontBold = False
  6753.    nhWnd = cWalkThruWindow(nClass, nCaption, nOwnerHwnd, nOwnerClass, nOwnerCaption, True)
  6754.    Do While (nhWnd <> 0)
  6755.       i = i + 1
  6756.       List1.AddItem "[" & Format$(i, "00") & "] " & Right$("0000" + Hex$(nhWnd), 4) & " " & nCaption & " (" & nClass & ")"
  6757.       List2.AddItem "[" & Format$(i, "00") & "] " & Right$("0000" + Hex$(nOwnerHwnd), 4) & " " & nOwnerCaption & " (" & nOwnerClass & ")"
  6758.       nhWnd = cWalkThruWindow(nClass, nCaption, nOwnerHwnd, nOwnerClass, nOwnerCaption, False)
  6759.    Loop
  6760. End Sub
  6761. Private Sub TestWindowsIni()
  6762.    Dim Tmp        As String
  6763.    Tmp = Tmp + "DateSeparator is " + cGetDateSeparator() + Chr$(13)
  6764.    Tmp = Tmp + "TimeSeparator is " + cGetTimeSeparator() + Chr$(13)
  6765.    Tmp = Tmp + "ListSeparator is " + cGetListSeparator() + Chr$(13)
  6766.    Tmp = Tmp + "DateFormat    is " + cGetDateFormat() + Chr$(13)
  6767.    Tmp = Tmp + "HourFormat    is " + cGetHourFormat() + Chr$(13)
  6768.    Tmp = Tmp + "Currency      is " + cGetCurrency() + Chr$(13)
  6769.    Tmp = Tmp + "Language      is " + cGetLanguage() + Chr$(13)
  6770.    Tmp = Tmp + "Country       is " + cGetCountry() + Chr$(13)
  6771.    Tmp = Tmp + "CountryCode   is " + cGetCountryCode() + Chr$(13)
  6772.    Label3.Caption = Tmp
  6773. End Sub
  6774. Private Sub TestWinINI1()
  6775.    Label3.Caption = cGetDevices() & Chr$(13) & Chr$(13) & "Length = " & Len(cGetDevices())
  6776. End Sub
  6777. Private Sub TestWinINI2()
  6778.    Label3.Caption = cGetPrinterPorts() & Chr$(13) & Chr$(13) & "Length = " & Len(cGetPrinterPorts())
  6779. End Sub
  6780. Private Sub TestWinINI3()
  6781.    Label3.Caption = cGetWinSection("windows") & Chr$(13) & Chr$(13) & "Length = " & Len(cGetWinSection("windows"))
  6782. End Sub
  6783. Private Sub TestHexaToX()
  6784.    Dim Title      As String
  6785.    Dim Tmp        As String
  6786.    Dim Tmp1       As String
  6787.    Dim Tmp2       As String
  6788.    Dim i          As Integer
  6789.    Dim j          As Integer
  6790.    Tmp1 = "Hexa to Integer" & Chr$(13) & Chr$(13)
  6791.    Tmp2 = "0"
  6792.    Tmp1 = Tmp1 & Tmp2 & " -> " & cH2I(Tmp2) & Chr$(13)
  6793.    Tmp2 = "1"
  6794.    Tmp1 = Tmp1 & Tmp2 & " -> " & cH2I(Tmp2) & Chr$(13)
  6795.    Tmp2 = "A"
  6796.    Tmp1 = Tmp1 & Tmp2 & " -> " & cH2I(Tmp2) & Chr$(13)
  6797.    Tmp2 = "A1"
  6798.    Tmp1 = Tmp1 & Tmp2 & " -> " & cH2I(Tmp2) & Chr$(13)
  6799.    Tmp2 = "A1B"
  6800.    Tmp1 = Tmp1 & Tmp2 & " -> " & cH2I(Tmp2) & Chr$(13)
  6801.    Tmp2 = "7FFF"
  6802.    Tmp1 = Tmp1 & Tmp2 & " -> " & cH2I(Tmp2) & Chr$(13)
  6803.    Tmp2 = "A1B2"
  6804.    Tmp1 = Tmp1 & Tmp2 & " -> " & cH2I(Tmp2) & Chr$(13)
  6805.    Tmp2 = "FFFF"
  6806.    Tmp1 = Tmp1 & Tmp2 & " -> " & cH2I(Tmp2) & Chr$(13) & Chr$(13)
  6807.    Tmp1 = Tmp1 & "Hexa to Long" & Chr$(13) & Chr$(13)
  6808.    Tmp2 = "0"
  6809.    Tmp1 = Tmp1 & Tmp2 & " -> " & cH2L(Tmp2) & Chr$(13)
  6810.    Tmp2 = "1"
  6811.    Tmp1 = Tmp1 & Tmp2 & " -> " & cH2L(Tmp2) & Chr$(13)
  6812.    Tmp2 = "A"
  6813.    Tmp1 = Tmp1 & Tmp2 & " -> " & cH2L(Tmp2) & Chr$(13)
  6814.    Tmp2 = "A1"
  6815.    Tmp1 = Tmp1 & Tmp2 & " -> " & cH2L(Tmp2) & Chr$(13)
  6816.    Tmp2 = "A1B"
  6817.    Tmp1 = Tmp1 & Tmp2 & " -> " & cH2L(Tmp2) & Chr$(13)
  6818.    Tmp2 = "A1B2"
  6819.    Tmp1 = Tmp1 & Tmp2 & " -> " & cH2L(Tmp2) & Chr$(13)
  6820.    Tmp2 = "7FFFFFFF"
  6821.    Tmp1 = Tmp1 & Tmp2 & " -> " & cH2L(Tmp2) & Chr$(13)
  6822.    Tmp2 = "B2A1A1B2"
  6823.    Tmp1 = Tmp1 & Tmp2 & " -> " & cH2L(Tmp2) & Chr$(13)
  6824.    Tmp2 = "FFFFFFFF"
  6825.    Tmp1 = Tmp1 & Tmp2 & " -> " & cH2L(Tmp2) & Chr$(13) & Chr$(13)
  6826.    cStartBasisTimer
  6827.    For i = 1 To Item
  6828.       j = cH2I(Tmp2)
  6829.    Next i
  6830.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  6831.    Label3.Caption = Tmp1
  6832. End Sub
  6833. Private Sub TestBinaryToX()
  6834.    Dim Title      As String
  6835.    Dim Tmp        As String
  6836.    Dim Tmp1       As String
  6837.    Dim Tmp2       As String
  6838.    Dim i          As Integer
  6839.    Dim j          As Integer
  6840.    Tmp1 = "Binary to Integer" & Chr$(13) & Chr$(13)
  6841.    Tmp2 = String(1, "1")
  6842.    Tmp1 = Tmp1 & Tmp2 & " -> " & cB2I(Tmp2) & Chr$(13)
  6843.    Tmp2 = String(2, "1")
  6844.    Tmp1 = Tmp1 & Tmp2 & " -> " & cB2I(Tmp2) & Chr$(13)
  6845.    Tmp2 = String(4, "1")
  6846.    Tmp1 = Tmp1 & Tmp2 & " -> " & cB2I(Tmp2) & Chr$(13)
  6847.    Tmp2 = String(8, "1")
  6848.    Tmp1 = Tmp1 & Tmp2 & " -> " & cB2I(Tmp2) & Chr$(13)
  6849.    Tmp2 = String(16, "1")
  6850.    Tmp1 = Tmp1 & Tmp2 & " -> " & cB2I(Tmp2) & Chr$(13)
  6851.    Tmp2 = "0111111111111111"
  6852.    Tmp1 = Tmp1 & Tmp2 & " -> " & cB2I(Tmp2) & Chr$(13)
  6853.    Tmp2 = "0101010101010101"
  6854.    Tmp1 = Tmp1 & Tmp2 & " -> " & cB2I(Tmp2) & Chr$(13)
  6855.    Tmp2 = "1010101010101010"
  6856.    Tmp1 = Tmp1 & Tmp2 & " -> " & cB2I(Tmp2) & Chr$(13) & Chr$(13)
  6857.    Tmp1 = Tmp1 & "Binary to Long" & Chr$(13) & Chr$(13)
  6858.    Tmp2 = String(1, "1")
  6859.    Tmp1 = Tmp1 & Tmp2 & " -> " & cB2L(Tmp2) & Chr$(13)
  6860.    Tmp2 = String(4, "1")
  6861.    Tmp1 = Tmp1 & Tmp2 & " -> " & cB2L(Tmp2) & Chr$(13)
  6862.    Tmp2 = String(8, "1")
  6863.    Tmp1 = Tmp1 & Tmp2 & " -> " & cB2L(Tmp2) & Chr$(13)
  6864.    Tmp2 = String(16, "1")
  6865.    Tmp1 = Tmp1 & Tmp2 & " -> " & cB2L(Tmp2) & Chr$(13)
  6866.    Tmp2 = String(32, "1")
  6867.    Tmp1 = Tmp1 & Tmp2 & " -> " & cB2L(Tmp2) & Chr$(13)
  6868.    Tmp2 = "0101010101010101"
  6869.    Tmp1 = Tmp1 & Tmp2 & " -> " & cB2L(Tmp2) & Chr$(13)
  6870.    Tmp2 = "1010101010101010"
  6871.    Tmp1 = Tmp1 & Tmp2 & " -> " & cB2L(Tmp2) & Chr$(13)
  6872.    Tmp2 = "01010101010101010101010101010101"
  6873.    Tmp1 = Tmp1 & Tmp2 & " -> " & cB2L(Tmp2) & Chr$(13)
  6874.    Tmp2 = "10101010101010101010101010101010"
  6875.    Tmp1 = Tmp1 & Tmp2 & " -> " & cB2L(Tmp2) & Chr$(13) & Chr$(13)
  6876.    cStartBasisTimer
  6877.    For i = 1 To Item
  6878.       j = cB2I(Tmp2)
  6879.    Next i
  6880.    Tmp1 = Tmp1 & "speed for " & Item & " = " & cReadBasisTimer() & " ms"
  6881.    Label3.Caption = Tmp1
  6882. End Sub
  6883.