Func _JianToFan($sInputText) ;GB2312转GBK
Local $InPtr = _WinAPI_MultiByteToWideChar($sInputText, 936, $MB_COMPOSITE, False)
Local $OutPtr
Local $dll = DllOpen('kernel32.dll')
Local $result = DllCall($dll, "none", "LCMapStringA", "LONG", 0x0804, "dword", 0x4000000, "STR", _
DllStructGetData($InPtr, 1), "LONG", DllStructGetSize($InPtr), "str", $OutPtr, 'long', DllStructGetSize($InPtr)) ; "PTR",$OutPtr,'long',DllStructGetSize($InPtr))
If IsArray($result) Then Return $result[5]
EndFunc ;==>_JianToFan
Func _FanToJian($sInputText) ;GBK转GB2312
Local $InPtr = _WinAPI_MultiByteToWideChar($sInputText, 936, $MB_COMPOSITE, False)
Local $OutPtr
Local $dll = DllOpen('kernel32.dll')
Local $result = DllCall($dll, "none", "LCMapStringA", "LONG", 0x0804, "dword", 0x2000000, "STR", _
DllStructGetData($InPtr, 1), "LONG", DllStructGetSize($InPtr), "str", $OutPtr, 'long', DllStructGetSize($InPtr)) ; "PTR",$OutPtr,'long',DllStructGetSize($InPtr))
If IsArray($result) Then Return $result[5]
EndFunc ;==>_FanToJian
|