论坛上pdf文件<mysql.au3> 一个小BUG,不知道是人为还是
;_MySQL_Num_RowsFunc _MySQL_Num_Rows($result)
Local $rows = DllCall("libmysql.dll", "uint64", "mysql_num_rows", "ptr", $result)
If @error Then Return SetError(1, 0, 0)
Return __MySQL_ReOrderULONGLONG($rows)
EndFunc ;==>_MySQL_Num_Rows
;__MySQL_ReOrderULONGLONG($rows)
Func __MySQL_ReOrderULONGLONG($UINT64)
Local $int = DllStructCreate("uint64")
Local $longlong = DllStructCreate("ulong;ulong", DllStructGetPtr($int))
DllStructSetData($int, 1, $UINT64)
Return 4294967296 * DllStructGetData($longlong, 1) + DllStructGetData($longlong, 2)
EndFunc ;==>__MySQL_ReOrderULONGLONG
问题出在:
Return 4294967296 * DllStructGetData($longlong, 1) + DllStructGetData($longlong, 2)
导致查询结果的二维数组无法构造。
原作者不会那么粗心吧,
会不会论坛一些不愿意共享的又想刷分的人。 有可能啊,有可能是不小心的啊。 回复 2# zhongzijie
喔喔!
页:
[1]