Modify ↓
Opened 15 years ago
Closed 12 years ago
#1870 closed Bug (Fixed)
@GUI_DRAGFILE
| Reported by: | anonymous | Owned by: | Jon |
|---|---|---|---|
| Milestone: | 3.3.9.21 | Component: | AutoIt |
| Version: | 3.3.6.1 | Severity: | None |
| Keywords: | @GUI_DRAGFILE | Cc: |
Description
The @GUI_DRAGFILE seems to return an extra 2 bytes, assumably a @CRLF, when a file is dropped onto an Edit control, as opposed to the return string when dropped e.g. onto a button.
Attachments (0)
Change History (6)
comment:1 Changed 15 years ago by mvg
comment:2 Changed 15 years ago by mvg
#cs - - - >Environment(Language:0409 Keyboard:00000409 OS:WIN_XP/Service Pack 3 CPU:X86 OS:X86) >Running:(3.3.6.1):C:\...\autoit3.exe "D:\...\_TEST_.au3" @GUI_DragFile = "D:\\...\\_TEST__Obfuscated.au3\r\n" GUICtrlRead($cEdit) = "D:\\...\\String_and_NUL\r\nD:\\...\\_FileCountLines.txt\r\nD:\\...\\_TEST__Obfuscated.au3\r\n" #ce - - -
;~ #AutoIt3Wrapper_AU3Check_Stop_OnWarning=y
;~ #AutoIt3Wrapper_AU3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 6 -q
;~ #AutoIt3Wrapper_Add_Constants=n
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <StaticConstants.au3>
#include <EditConstants.au3>
main()
Exit
Func main()
;; gui setup.
Local $hGui = GUICreate("My GUI", Default, Default, Default, Default, $GUI_SS_DEFAULT_GUI, $WS_EX_ACCEPTFILES)
_DebugOut('$hGui', $hGui) ;### Debug DebugOut.
;
Local $aWinClientSize = WinGetClientSize($hGui) ;; [0]Width, [1]Height
;
GUICtrlCreateLabel("Label", 2, 2)
Local $cLabel = GUICtrlCreateLabel("", 0, 0, Floor($aWinClientSize[0] / 2), $aWinClientSize[1], BitOR($GUI_SS_DEFAULT_LABEL, $SS_BLACKFRAME))
GUICtrlSetState($cLabel, $GUI_DROPACCEPTED)
_DebugOut('$cLabel', $cLabel) ;### Debug DebugOut.
;
Local $cEdit = GUICtrlCreateEdit("Edit", Floor($aWinClientSize[0] / 2), 0, Floor($aWinClientSize[1] / 2), $aWinClientSize, $GUI_SS_DEFAULT_EDIT)
GUICtrlSetState($cEdit, $GUI_DROPACCEPTED)
_DebugOut('$cEdit', $cEdit) ;### Debug DebugOut.
;
GUISetState(@SW_SHOW)
;; gui wait.
Local $iMsg, $fQuit = False
Do
$iMsg = GUIGetMsg()
If $iMsg Then
Switch $iMsg
Case $GUI_EVENT_CLOSE
_DebugOut('- $GUI_EVENT_CLOSE') ;### Debug DebugOut.
$fQuit = True
Case $GUI_EVENT_DROPPED
_DebugOut('- $GUI_EVENT_DROPPED') ;### Debug DebugOut.
_DebugOut('@GUI_DRAGID', @GUI_DragId) ;### Debug DebugOut.
_DebugOut('@GUI_DROPID', @GUI_DropId) ;### Debug DebugOut.
_DebugOut('@GUI_DragFile', _DebugString(@GUI_DragFile)) ;### Debug DebugOut.
_DebugOut('GUICtrlRead($cEdit)', _DebugString(GUICtrlRead($cEdit))) ;### Debug DebugOut.
EndSwitch
EndIf
Until $fQuit
;; gui cleanup.
GUIDelete()
_DebugOut('!< main()') ;### Debug DebugOut
EndFunc
Func _DebugString($S)
Return StringReplace(StringReplace(StringReplace(StringReplace($S, '\', '\\'), @CR, '\r'), @LF, '\n'), @TAB, '\t')
EndFunc
Func _DebugOut($1 = '', $2 = '')
If IsString($2) And $2 Then $2 = '"' & StringReplace($2, "'", "''") & '"'
If IsArray($2) Then $2 = '[' & VarGetType($2) & ']'
If Not ($2 == '') Or Not IsString($2) Then $1 &= ' = ' & String($2)
ConsoleWrite($1 & @CRLF)
EndFunc
comment:3 Changed 14 years ago by guinness
A 'workaround' is using StringTrimRight and StringLen
$sFilePath = StringTrimRight(@GUI_DragFile, StringLen(@CRLF))
comment:4 Changed 12 years ago by Jon
- Resolution set to Rejected
- Status changed from new to closed
comment:5 Changed 12 years ago by Jpm
- Resolution Rejected deleted
- Status changed from closed to reopened
comment:6 Changed 12 years ago by Jon
- Milestone set to 3.3.9.21
- Owner set to Jon
- Resolution set to Fixed
- Status changed from reopened to closed
Fixed by revision [8994] in version: 3.3.9.21
Guidelines for posting comments:
- You cannot re-open a ticket but you may still leave a comment if you have additional information to add.
- In-depth discussions should take place on the forum.
For more information see the full version of the ticket guidelines here.
Note: See
TracTickets for help on using
tickets.

That would also take care of the 'seems' part.