<% Class Possible Dim Aso Private Sub Class_Initialize Set Aso = CreateObject ("AdoDb.Stream") aso.mode = 3 asbo.type = 1 aso.open end sub private sub class_terminate set aso = Nothing end SUB
Private function bin2str (bin) DIM I, Str for i = 1 to lenb (bin) CLOW = MIDB (BIN, I, 1) IF ASCB (CLOW) <128 TEN STR = STR & CHR (ASCB (CLOW) ELSE I = I 1 IF i <= lenb (bin) THEN STR = STR & CHR (ASCW (MIDB (BIN, I, 1) & CLOW) end if next bin2str = str * Function Private function Num2Str (NUM, BASE, LENS) DIM RET RET = "" While (NUM> = Base) Ret Num = (Num - Num Mod Base) / Base Wend Num2Str = Right (String (Lens, "0") & Num & Ret LENS) End Function Private Function Str2Num (STR, BASE) DIM RET RET = 0 for i = 1 to Len (Str) RET = RET * BASE CINT (MID (Str, I, 1)) Next Str2Num = RET End Function Private function binval (bin) DIM RET RET = 0 for i = lenb (bin) TO 1 Step -1 Ret = RET * 256 ASCB (MIDB (BIN, I, 1)) Next Binval = Ret End Function Private Function Binval2 ( BIN) DIM RET RET = 0 for i = 1 to lenb (bin) RET = RET * 256 ASCB (MIDB (BIN, I, 1)) Next Binval2 = RET End Function Private Function GetImages (FileSpec) DIM RET (3) Aso.LoadFromFile (filespe c) bflag = aso.read (3) Select Case Hex (binval (bflag)) Case "4E5089": aso.read (15) RET (0) = "PNG" Ret (1) = binval2 (2) )))) RET (2) = binval2 (ASO.READ (2)) Case "464947": ASO.READ (3) RET (0) = "GIF" RET (1) = binval (ASO. READ (2)) RET (2) = binval (ASO.READ (2)) Case "535746": aso.read (5) bindata = aso.read (1) Sconv = Num2Str (ASCB (Bindata), 2, 8 ) NBITS = Str2Num (Left (SCONV, 5), 2) SCONV = MID (SCONV, 6) While (Len (Sconv) Num2Str (ASCB (Bindata), 2, 8) Wend Ret (0) = "SWF" RET (1) = INT (ABS (Str2Num (MID (SCONV, 1 * NBITS 1, NBITS), 2) -Str2Num (MID (SCONV, 0 * NBITS 1, NBITS), 2)) / 20) RET (2) = int (ABS (Str2Num (MID (SCONV, 3 * NBITS 1, NBITS), 2) -Str2Num (MID (Sconv , 2 * NBITS 1, NBITS, 2) / 20) Case "FFD8FF": do do: p1 = binval (aso.read (1)): loop while p1 = 255 and not ASO.EOS IF P1> 191 And P1 <196 THEN EXIT DO ELSE ASO.READ (binval2 (2)) - 2) DO: P1 = binval (aso.read (1)): loop while p1 <255 and not ASO.EOS loop while True aso.read (3) RET (0) = "JPG" RET (2) = binval2 (ASO.READ (2)) RET (1) = binval2 (ASO.READ (2)) Case ELSE: if f2str (bflag), 2) = "bm" Then aso.read (15) RET (0) = "BMP" RET (1) = binval (ASO.READ (4)) RET (2) = binval (ASO.READ) 4) ELSE RET (0) = "" end if End select ret (3) = "width =" "" "" "" "" "" "" " GetImagesize = RET END FUNCTION FUNCTION READX (PIC_PATH) SET FSO1 = Server.createObject ("scripting.FilesystemObject") set f1 = fso1.getfile (PIC_PATH) EXT = fso1.GetextensionNam e (PIC_PATH) SELECT CASE EXT CASE "GIF", "BMP", "JPG", "PNG": arr = getimagesize (f1.path) Response.write arr (1) case "swf" arr = pp.getimagesize (F1 .path) response.write arr (1) end select set f1 = NOTHING SET FSO1 = Nothing end function Function readY (pic_path) Set fso1 = server.CreateObject ( "Scripting.FileSystemObject") Set f1 = fso1.GetFile (pic_path) ext = fso1.GetExtensionName (pic_path) select case ext case "gif", "bmp", "jpg" , "PNG": arr = getimagesize (f1.path) response.write arr (2) case "swf" arr = pp.getimagesize (f1.path) Response.write arr (2) end select set f1 = nothing set fso1 = Nothing end functionered class%> Example: <% set pp = new POSIBLE PP.READX ("E: /WORK/BG.JPG") PP.Ready ("E: / WORK / BG. JPG ")%>