找回密码
 加入
搜索
查看: 1813|回复: 3

很郁闷的MD5验证文件。怎么得到的都是控件ID3的MD5值呢?

[复制链接]
发表于 2010-1-27 04:58:26 | 显示全部楼层 |阅读模式
本帖最后由 cls822001 于 2010-1-28 18:09 编辑

#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include "ACN_HASH.au3"
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("MD5验证器", 293, 136, 386, 255, -1, $WS_EX_ACCEPTFILES)
$Label1 = GUICtrlCreateLabel("把您要验证的文件拖到下面区域", 40, 24, 200, 18)
GUICtrlSetFont(-1, 11, 400, 0, "新宋体")
$edit=GUICtrlCreateEdit("",30, 48, 228, 80)
GUICtrlSetState(-1, $GUI_DROPACCEPTED)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        Exit
                Case $GUI_EVENT_DROPPED
                        $File = GUICtrlRead($edit)
                        $md5 = add()
                        GUICtrlSetData($edit, $md5)
        EndSwitch
WEnd
Func add()
        $BufferSize = 0x20000
       
        $Filename = $File
        MsgBox(0, "", $Filename);这里得到的不是3呀是EDIT里输入的,可不知道为什么最后得到的非是EDIT的控件ID
        If $Filename = "" Then Exit

        $FileHandle = FileOpen($Filename, 16)

        $MD5CTX = _MD5Init()

        For $i = 1 To Ceiling(FileGetSize($Filename) / $BufferSize)
                _MD5Input($MD5CTX, FileRead($FileHandle, $BufferSize))
        Next
        $Hash = _MD5Result($MD5CTX)
        FileClose($FileHandle)
        Return SetError(0, 0, Hex($Hash))
EndFunc   ;==>add
 楼主| 发表于 2010-1-28 15:45:58 | 显示全部楼层
怎么没人看到呀...哪个给偶看看呗!!!!
发表于 2010-5-7 21:38:32 | 显示全部楼层
没看明白 ,明天在来看
发表于 2010-5-7 22:33:47 | 显示全部楼层
$File = GUICtrlRead($edit) 这句改为以下就行了
$File = StringRegExpReplace(GUICtrlRead($edit), @CRLF, '')
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-9-22 07:27 , Processed in 0.075492 second(s), 22 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表