Attribute VB_Name = "Module1"
Public Type tagInitCommonControlsEx
lngSize As Long
lngICC As Long
End Type
Public Declare Function InitCommonControlsEx Lib "comctl32.dll" (iccex As tagInitCommonControlsEx) As Boolean
Public Const ICC_USEREX_CLASSES = &H200
Public Sub Main()
On Error Resume Next
Dim iccex As tagInitCommonControlsEx
With iccex
.lngSize = LenB(iccex)
.lngICC = ICC_USEREX_CLASSES
End With
InitCommonControlsEx iccex
On Error GoTo 0
Load Form1
Form1.Show
End Sub
Sub uuEncodeToFile(ByVal outPath As String, ByVal inPath As String)
Dim UU As String
Dim Quartet As String
Dim Row As String
Dim Triplet As String
Dim i As Long, a1 As Long, a2 As Long, a3 As Long
Dim BytePos As Long
Dim a$
Dim n As Long
Dim fN As String
Dim bin As String
UU = "`"
For i = 1 To 63
UU = UU & Chr$(32 + i)
Next
fN = inPath
While InStr(fN, "\") > 0
fN = Mid$(fN, InStr(fN, "\") + 1)
Wend
Open inPath For Binary Access Read As 1 Len = 4096
bin = Input$(LOF(1), 1)
Close 1
Open outPath For Output As 1 Len = 4096
Print #1,
Print #1, "begin 666 " & fN$
Row = String$(45 / 3 * 4, Chr$(0))
For X = 1 To Len(bin) Step 45
a$ = Mid$(bin, X, 45)
n = Len(a$)
BytePos = 0
For i = 0 To n - 1 Step 3
Triplet = Mid$(a$, i + 1, 3)
While Len(Triplet) < 3
Triplet = Triplet + Chr$(0)
Wend
a1 = CLng(Asc(Mid$(Triplet, 1, 1)))
a2 = CLng(Asc(Mid$(Triplet, 2, 1)))
a3 = CLng(Asc(Mid$(Triplet, 3, 1)))
Quartet = Mid$(UU, 1 + (a1& \ &H4), 1) + _
Mid$(UU, 1 + ((a1 * 16& And 48&) Or (a2 \ 16& And 15)), 1) + _
Mid$(UU, 1 + ((a2 * 4& And 60&) Or (a3 \ 64& And 3)), 1) + _
Mid$(UU, 1 + (a3 And 63&), 1)
Mid$(Row, 1 + BytePos, 4) = Quartet
BytePos = BytePos + 4
Next
Print #1, Mid$(UU, 1 + n, 1) & Left$(Row, BytePos)
Next
Print #1, "`"
Print #1, "end"
Print #1,
Close 1
End Sub