亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? modparsers.bas

?? 這是網站里可以播放不同音樂的程序
?? BAS
?? 第 1 頁 / 共 2 頁
字號:

Public Function iparseIsArrayEmpty(ByVal lArrayPointer As Long) As Boolean
  ' test to see if an array has been initialized
  iparseIsArrayEmpty = (lArrayPointer = -1&)
End Function

Public Function iparseByteAlignOnWord(ByVal bitDepth As Byte, ByVal Width As Long) As Long
    ' function to align any bit depth on dWord boundaries
    iparseByteAlignOnWord = (((Width * bitDepth) + &H1F&) And Not &H1F&) \ &H8&
End Function

Public Function iparseArrayToPicture(inArray() As Byte, Offset As Long, Size As Long) As IPicture
    
    ' function creates a stdPicture from the passed array
    ' Note: The array was already validated as not empty when calling class' LoadStream was called
    
    Dim o_hMem  As Long
    Dim o_lpMem  As Long
    Dim aGUID(0 To 3) As Long
    Dim IIStream As IUnknown
    
    aGUID(0) = &H7BF80980    ' GUID for stdPicture
    aGUID(1) = &H101ABF32
    aGUID(2) = &HAA00BB8B
    aGUID(3) = &HAB0C3000
    
    o_hMem = GlobalAlloc(&H2&, Size)
    If Not o_hMem = 0& Then
        o_lpMem = GlobalLock(o_hMem)
        If Not o_lpMem = 0& Then
            CopyMemory ByVal o_lpMem, inArray(Offset), Size
            Call GlobalUnlock(o_hMem)
            If CreateStreamOnHGlobal(o_hMem, 1&, IIStream) = 0& Then
                  Call OleLoadPicture(ByVal ObjPtr(IIStream), 0&, 0&, aGUID(0), iparseArrayToPicture)
            End If
        End If
    End If

End Function

Public Function iparseHandleToStdPicture(ByVal hImage As Long, ByVal imgType As Long) As IPicture

    ' function creates a stdPicture object from a image handle (bitmap or icon)
    
    Dim lpPictDesc As PictDesc, aGUID(0 To 3) As Long
    With lpPictDesc
        .Size = Len(lpPictDesc)
        .Type = imgType
        .hHandle = hImage
        .hPal = 0
    End With
    ' IPicture GUID {7BF80980-BF32-101A-8BBB-00AA00300CAB}
    aGUID(0) = &H7BF80980
    aGUID(1) = &H101ABF32
    aGUID(2) = &HAA00BB8B
    aGUID(3) = &HAB0C3000
    ' create stdPicture
    Call OleCreatePictureIndirect(lpPictDesc, aGUID(0), True, iparseHandleToStdPicture)
    
End Function

Public Function iparseReverseLong(ByVal inLong As Long) As Long

    ' fast function to reverse a long value from big endian to little endian
    ' PNG files contain reversed longs
    Dim b1 As Long
    Dim b2 As Long
    Dim b3 As Long
    Dim b4 As Long
    Dim lHighBit As Long
    
    lHighBit = inLong And &H80000000
    If lHighBit Then
      inLong = inLong And Not &H80000000
    End If
    
    b1 = inLong And &HFF
    b2 = (inLong And &HFF00&) \ &H100&
    b3 = (inLong And &HFF0000) \ &H10000
    If lHighBit Then
      b4 = inLong \ &H1000000 Or &H80&
    Else
      b4 = inLong \ &H1000000
    End If
    
    If b1 And &H80& Then
      iparseReverseLong = ((b1 And &H7F&) * &H1000000 Or &H80000000) Or _
          b2 * &H10000 Or b3 * &H100& Or b4
    Else
      iparseReverseLong = b1 * &H1000000 Or _
          b2 * &H10000 Or b3 * &H100& Or b4
    End If

End Function

Public Function iparseFileExists(FileName As String) As Boolean
    ' test to see if a file exists
    iparseFileExists = (Len(Dir$(FileName, vbArchive Or vbHidden Or vbReadOnly Or vbSystem)) > 0)

End Function

Public Function iparseValidateDLL(ByVal DllName As String, ByVal dllProc As String) As Boolean
    
    ' PURPOSE: Test a DLL for a specific function.
    
    Dim LB As Long, pa As Long
    
    'attempt to open the DLL to be checked
    LB = LoadLibrary(DllName)
    If LB Then
        'if so, retrieve the address of one of the function calls
        pa = GetProcAddress(LB, dllProc)
        ' free references
        FreeLibrary LB
    End If
    iparseValidateDLL = (Not (LB = 0 Or pa = 0))
    
End Function

Public Function iparseValidateZLIB(ByRef DllName As String, ByRef Version As Long, _
                                ByRef isCDECL As Boolean, ByRef hasCompression2 As Boolean, _
                                Optional ByVal bTestOnly As Boolean) As Boolean
    
    ' PURPOSE: Test ZLib availability and calling convention.
    
    ' About zLIB.  There are several versions ranging from v1.2.3 (latest) to v1.0.? (earliest).
    ' Zlib is used to compress/decompress PNG files, among other things.
    
    ' However, zLIB is written with C calling convention (cdecl) which is unusable with VB.  There
    ' are other modified versions out there that were converted to stdcall calling convention which
    ' is what VB expects. But, we don't know the calling convention of the zLIB in advance, do we?
    
    ' Allowing VB to call cdecl directly results in crashes or invalid function returns. The class
    ' cCDECL is one created by Paul Caton that uses assembly to "wrap" the cdecl call into a stdcall.
    ' But we still need to know the calling convention so we know to use cCDECL or simple API calls.
    
    Dim LB As Long, pa As Long
    Dim asmVal As Integer
    
    DllName = "zlib1.dll"       ' test for newer version first
    For Version = 2& To 1& Step -1&
        LB = LoadLibrary(DllName) 'attempt to open the DLL to be checked
        If LB Then
            hasCompression2 = Not (GetProcAddress(LB, "compress2") = 0)
            pa = GetProcAddress(LB, "crc32") ' retrieve the address of the "crc32" exported function
            If Not pa = 0& Then
                
                If bTestOnly Then Exit For
                Do
                    ' Note: this method will not work for every DLL, nor every function within a DLL.
                    ' I have analyzed 5 versions of zlib (some cdecl, some stdcall) using disassemblers
                    ' and am confident this will work for the crc32 function in all versions.
                    
                    ' Looking for an exit code:
                    CopyMemory asmVal, ByVal pa, 1&
                    Select Case asmVal
                        Case &HC3               ' exit code, no stack clean up
                            isCDECL = True      ' DLL uses cdecl calling convention, we use cCDECL
                            Exit For
                        Case &HC2
                            CopyMemory asmVal, ByVal pa + 1&, 2&
                            If asmVal = &HC Then ' exit code with clean up of 12 bytes (the 3 crc32 parameters)
                                isCDECL = False  ' DLL uses stdcall calling convention, we use APIs
                                Exit For
                            End If
                    End Select
                    pa = pa + 1&
                Loop
            End If
            ' unmap library
            FreeLibrary LB
            LB = 0&
            hasCompression2 = False
        End If
        DllName = "zlib.dll"    ' test for older version next, if necessary
    Next Version
    
    If Not LB = 0& Then FreeLibrary LB
    iparseValidateZLIB = (Not (Version = 0&))
    
End Function


Public Sub iparseValidateAlphaChannel(inStream() As Byte, bPreMultiply As Boolean, bIsAlpha As Boolean, imgType As Long)

    ' Purpose: Modify 32bpp DIB's alpha bytes depending on whether or not they are used
    
    ' Parameters
    ' inStream(). 2D array overlaying the DIB to be checked
    ' bPreMultiply. If true, image will be premultiplied if not already
    ' bIsAlpha. Returns whether or not the image contains transparency
    ' imgType. If passed as -1 then image is known to be not alpha, but will have its alpha values set to 255
    '          When routine returns, imgType is either imgBmpARGB, imgBmpPARGB or imgBitmap

    Dim X As Long, Y As Long
    Dim lPARGB As Long, zeroCount As Long
    Dim bPARGB As Boolean, bAlpha As Boolean

    ' see if the 32bpp is premultiplied or not and if it is alpha or not
    If Not imgType = -1 Then
        For Y = 0 To UBound(inStream, 2)
            For X = 3 To UBound(inStream, 1) Step 4
                Select Case inStream(X, Y)
                Case 0
                    If lPARGB = 0 Then
                        ' zero alpha, if any of the RGB bytes are non-zero, then this is not pre-multiplied
                        If Not inStream(X - 1, Y) = 0 Then
                            lPARGB = 1 ' not premultiplied
                        ElseIf Not inStream(X - 2, Y) = 0 Then
                            lPARGB = 1
                        ElseIf Not inStream(X - 3, Y) = 0 Then
                            lPARGB = 1
                        End If
                        ' but don't exit loop until we know if any alphas are non-zero
                    End If
                    zeroCount = zeroCount + 1 ' helps in decision factor at end of loop
                Case 255
                    ' no way to indicate if premultiplied or not, unless...
                    If lPARGB = 1 Then
                        lPARGB = 2    ' not pre-multiplied because of the zero check above
                        Exit For
                    End If
                Case Else
                    ' if any Exit For's below get triggered, not pre-multiplied
                    If lPARGB = 1 Then
                        lPARGB = 2: Exit For
                    ElseIf inStream(X - 3, Y) > inStream(X, Y) Then
                        lPARGB = 2: Exit For
                    ElseIf inStream(X - 2, Y) > inStream(X, Y) Then
                        lPARGB = 2: Exit For
                    ElseIf inStream(X - 1, Y) > inStream(X, Y) Then
                        lPARGB = 2: Exit For
                    End If
                End Select
            Next
            If lPARGB = 2 Then Exit For
        Next
        
        ' if we got all the way thru the image without hitting Exit:For then
        ' the image is not alpha unless the bAlpha flag was set in the loop
        
        If zeroCount = (UBound(inStream, 1) + 1) * (UBound(inStream, 2) + 1) Then ' every alpha value was zero
            bPARGB = False: bAlpha = False ' assume RGB, else 100% transparent ARGB
            ' also if lPARGB=0, then image is completely black
            imgType = vbPicTypeBitmap
        Else
            Select Case lPARGB
                Case 2: bPARGB = False: bAlpha = True ' 100% positive ARGB
                Case 1: bPARGB = False: bAlpha = True ' now 100% positive ARGB
                Case 0: bPARGB = True: bAlpha = True
            End Select
        End If
    End If
    
    ' see if caller wants the non-premultiplied alpha channel premultiplied
    If bAlpha = True Then
        If bPARGB Then ' else force premultiplied
            imgType = imgBmpPARGB
        Else
            imgType = imgBmpARGB
            If bPreMultiply = True Then
                For Y = 0 To UBound(inStream, 2)
                    For X = 3 To UBound(inStream, 1) Step 4
                        If inStream(X, Y) = 0 Then
                            CopyMemory inStream(X - 3, Y), 0&, &H4
                        ElseIf Not inStream(X, Y) = 255 Then
                            For lPARGB = X - 3 To X - 1
                                inStream(lPARGB, Y) = ((0& + inStream(lPARGB, Y)) * inStream(X, Y)) \ &HFF
                            Next
                        End If
                    Next
                Next
                bAlpha = True
            End If
        End If
    Else
        If bPreMultiply = True Then
            For Y = 0 To UBound(inStream, 2)
                For X = 3 To UBound(inStream, 1) Step 4
                    inStream(X, Y) = 255
                Next
            Next
        End If
    End If
    bIsAlpha = bAlpha

End Sub

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美激情综合在线| 日韩中文字幕区一区有砖一区 | 国产盗摄视频一区二区三区| 成人永久看片免费视频天堂| 欧美日韩视频专区在线播放| 国产欧美一区二区精品忘忧草| 一区二区在线观看视频在线观看| 久久精品国产精品青草| 欧美亚洲一区二区在线观看| 国产午夜精品在线观看| 日本aⅴ亚洲精品中文乱码| 色综合久久综合网97色综合| 久久综合久久鬼色中文字| 亚洲成a人v欧美综合天堂下载| av激情亚洲男人天堂| 久久在线观看免费| 日本欧美一区二区在线观看| 在线免费观看视频一区| 国产精品视频九色porn| 国产一区二区按摩在线观看| 日韩一区二区电影在线| 亚洲成人动漫av| 91精彩视频在线| 亚洲视频一区二区在线观看| av在线这里只有精品| 国产精品水嫩水嫩| 成人h动漫精品一区二| 国产欧美精品一区二区三区四区| 精品制服美女丁香| 精品久久久久久久久久久久久久久久久| 婷婷综合久久一区二区三区| 欧美午夜不卡在线观看免费| 亚洲免费av观看| 一本色道综合亚洲| 一区二区三区免费网站| 91蜜桃在线观看| 一区二区三区在线高清| 91福利在线导航| 亚洲1区2区3区视频| 欧美丰满少妇xxxxx高潮对白| 五月天国产精品| 91精品国产aⅴ一区二区| 免费在线看一区| 欧美成人aa大片| 国产毛片精品视频| 欧美国产精品v| 99这里只有精品| 亚洲狠狠爱一区二区三区| 欧美日韩一区精品| 日本不卡视频一二三区| 久久女同精品一区二区| 成人精品视频.| 亚洲一二三四区| 日韩视频一区二区在线观看| 国产在线观看免费一区| 国产精品成人免费| 欧美人与禽zozo性伦| 看电影不卡的网站| 国产精品久99| 在线观看91av| 国产99精品在线观看| 亚洲午夜激情网页| 亚洲精品一区二区三区蜜桃下载 | jvid福利写真一区二区三区| 国产精品美女久久久久高潮| 欧美日韩亚洲综合一区二区三区| 久久99蜜桃精品| 亚洲天堂av老司机| 日韩一区二区在线看| av一区二区三区四区| 日本欧美肥老太交大片| 国产精品成人一区二区艾草 | 精品美女一区二区三区| 99国产精品99久久久久久| 丝袜亚洲另类欧美| 中日韩免费视频中文字幕| 欧美日韩国产综合久久| 国产精品一线二线三线| 一区二区三区日本| 久久久精品日韩欧美| 欧美午夜电影在线播放| 国产v综合v亚洲欧| 日本怡春院一区二区| 国产精品传媒入口麻豆| 26uuu成人网一区二区三区| 91激情在线视频| 国产69精品一区二区亚洲孕妇| 日本v片在线高清不卡在线观看| 亚洲三级视频在线观看| 国产网站一区二区三区| 91精品国产乱码| 欧美日韩国产美女| 成人国产亚洲欧美成人综合网| 久久精品国内一区二区三区| 无码av免费一区二区三区试看| 国产精品久久精品日日| 久久免费美女视频| 日韩一区二区精品| 欧美高清一级片在线| 欧美体内she精视频| 欧美主播一区二区三区| 成人做爰69片免费看网站| 国产一区91精品张津瑜| 久久99久久精品| 日本中文字幕一区| 日韩精品福利网| 五月综合激情网| 午夜精品福利一区二区三区蜜桃| 日韩一区在线看| 日韩码欧中文字| 亚洲欧美视频在线观看视频| 国产精品国产自产拍高清av | 欧美精品一区二区久久久| 91精品国产综合久久久久久久久久 | 日韩你懂的在线观看| 日韩午夜电影av| 欧美一区2区视频在线观看| 欧美日韩视频在线第一区 | 精品国产亚洲一区二区三区在线观看| 精品视频999| 欧美精品久久久久久久多人混战| 欧美性感一类影片在线播放| 欧美写真视频网站| 欧美人伦禁忌dvd放荡欲情| 1024成人网| 亚洲欧美另类在线| 亚洲欧美视频在线观看视频| 亚洲在线中文字幕| 亚洲mv大片欧洲mv大片精品| 日韩中文字幕区一区有砖一区| 免费在线观看不卡| 国产又黄又大久久| 国产成人在线影院| 99久久精品国产导航| 91美女片黄在线观看| 欧美性三三影院| 日韩精品一区二区三区中文精品| xf在线a精品一区二区视频网站| 久久精品人人做人人综合| 国产精品嫩草99a| 亚洲激情校园春色| 石原莉奈一区二区三区在线观看| 蜜臀av在线播放一区二区三区| 激情欧美一区二区| www..com久久爱| 欧美理论电影在线| 久久毛片高清国产| 亚洲精品第一国产综合野| 丝袜美腿亚洲一区| 国产精一品亚洲二区在线视频| 91在线丨porny丨国产| 欧美日韩第一区日日骚| 久久―日本道色综合久久| 综合中文字幕亚洲| 丝袜国产日韩另类美女| 国产成人精品三级| 欧美日韩中文字幕一区| 久久精品视频免费| 午夜一区二区三区视频| 国产成人高清视频| 欧美日韩高清不卡| 国产精品国产三级国产aⅴ原创| 亚洲国产精品一区二区久久恐怖片 | 亚洲一区二区三区四区在线| 精品一区二区免费在线观看| 97精品视频在线观看自产线路二| 精品视频一区二区不卡| 欧美激情资源网| 奇米亚洲午夜久久精品| 不卡一区二区三区四区| 日韩一区二区电影| 一区二区三区在线高清| 懂色av一区二区三区蜜臀| 91精品黄色片免费大全| 亚洲色图都市小说| 国产精品99久久久久久有的能看 | 欧美激情在线一区二区| 美女一区二区久久| 色天天综合色天天久久| 中文字幕精品—区二区四季| 久草精品在线观看| 欧美日韩国产美女| 亚洲一区二区三区四区在线观看| 风间由美一区二区三区在线观看 | 欧美剧情片在线观看| 亚洲色图欧洲色图婷婷| 成人国产精品免费观看动漫| 久久麻豆一区二区| 极品少妇xxxx偷拍精品少妇| 欧美一区二区三区电影| 午夜久久久久久| 欧美三电影在线| 亚洲成在人线在线播放| 91理论电影在线观看| 中文字幕在线观看一区| 国产成人av影院| 欧美国产禁国产网站cc| 成人av在线资源网| 中文字幕一区日韩精品欧美| 成人午夜激情影院|