Custom Query

Filters
 
Or
 
  
 
Columns

Show under each result:


Results (55 - 57 of 3825)

Ticket Resolution Summary Owner Reporter
#3847 Fixed Type casting error in _WinAPI_MultiByteToWideChar Jpm anonymous
Description

This little example throws a fatal error.

#include <GUIConstants.au3>
#include <GuiEdit.au3>

crush()

Func crush()
    GUICreate('', 400, 400)
    Local $idEdit = GUICtrlCreateEdit(@ScriptFullPath, 0, 0, 400, 350, -1, 0)
    Local $idButton_ShowLen = GUICtrlCreateButton('Show Length', 10, 360, 380, 30)
    GUISetState()

    While True
        Switch GUIGetMsg()
            Case $GUI_EVENT_CLOSE
                ExitLoop
            Case $idButton_ShowLen
                _GUICtrlEdit_ShowBalloonTip($idEdit, 'Length', StringLen(GUICtrlRead($idEdit)), $TTI_INFO)
        EndSwitch
    WEnd
EndFunc   ;==>crush

The _GUICtrlEdit_ShowBalloonTip function does not cast its parameters to a string type, so _WinAPI_MultiByteToWideChar misunderstands the input and passes it as "struct*", which results in a fatal error.

Option to solve the error:

Func _WinAPI_MultiByteToWideChar($vText, $iCodePage = 0, $iFlags = 0, $bRetString = False)
;~      Local $sTextType = "str" ; remove
;~      If Not IsString($vText) Then $sTextType = "struct*" ; remove
        Local $sTextType = (IsDllStruct($vText) Or IsPtr($vText)) ? "struct*" : "str"

        ; compute size for the output WideChar
        Local $aResult = DllCall("kernel32.dll", "int", "MultiByteToWideChar", "uint", $iCodePage, "dword", $iFlags, _
                        $sTextType, $vText, "int", -1, "ptr", 0, "int", 0)
        If @error Or Not $aResult[0] Then Return SetError(@error + 10, @extended, 0)

        ; allocate space for output WideChar
        Local $iOut = $aResult[0]
        Local $tOut = DllStructCreate("wchar[" & $iOut & "]")

        $aResult = DllCall("kernel32.dll", "int", "MultiByteToWideChar", "uint", $iCodePage, "dword", $iFlags, $sTextType, $vText, _
                        "int", -1, "struct*", $tOut, "int", $iOut)
        If @error Or Not $aResult[0] Then Return SetError(@error + 20, @extended, 0)

        If $bRetString Then Return DllStructGetData($tOut, 1)
        Return $tOut
EndFunc   ;==>_WinAPI_MultiByteToWideChar
#3846 Fixed Undefined constants Jpm anonymous
Description

The following constants are used in the documentation ($tagNMITEMACTIVATE) but are not defined anywhere:

$LVKF_ALT
$LVKF_CONTROL
$LVKF_SHIFT
#3845 No Bug Hotkeys don't work Jos anonymous
Description

Hotkeys do not work when SciTE is launched with a non-english keyboard layout.

SciTE 4.4.6 Windows 10 Pro 21H1 19043.1110

Note: See TracQuery for help on using queries.