Search the Community
Showing results for tags 'wrap'.
-
Hello! I'm a newbie in AutoIt and want to wrap some internal autoit functions like RegWrite() in way function will display MsgBox with of error happens. I want to wrap because write error handler becomes really annoying when it comes to code, and I have to write the same code after every RegWrite() call and this becomes really ugly. So I just want this: Local $s_key = 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control' Local $s_value_name = 'value1' Local $s_value_type = 'REG_SZ' Local $value_data = 'data1' RegWrite( $s_key , $s_value_name , $s_value_type, $value_data ) If @error Then MsgBox( $MB_ICONERROR , 'ERROR' , 'Error writing registry:' & @CRLF & 'Key: ' & $s_key & @CRLF & 'Value: ' & $s_value_name & @CRLF & 'Type: ' & $s_value_type & @CRLF & 'Data: ' & $value_data & @CRLF & 'ErrorCode: ' & @error ) EndIf Local $s_key = 'HKEY_CURRENT_USER\Software\MyApp' RegWrite( $s_key ) If @error Then MsgBox( $MB_ICONERROR , 'ERROR' , 'Error writing registry:' & @CRLF & 'Key: ' & $s_key & 'ErrorCode: ' & @error ) EndIf Becomes into this: RegistryWrite( 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control' , 'value1' , 'REG_SZ' , 'data1' ) RegistryWrite( 'HKEY_CURRENT_USER\Software\MyApp' ) Func RegistryWrite( $s_key , $s_value_name = NULL , $s_value_type = NULL , $value_data = NULL ) RegWrite( $s_key , $s_value_name , $s_value_type, $value_data ) If @error Then MsgBox( $MB_ICONERROR , 'ERROR' , 'Error writing registry:' & @CRLF & 'Key: ' & $s_key & @CRLF & 'Value: ' & $s_value_name & @CRLF & 'Type: ' & $s_value_type & @CRLF & 'Data: ' & $value_data & @CRLF & 'ErrorCode: ' & @error ) EndIf EndFunc And I'm just confused how to properly pass the optional parameters to target function as documentation says that NULL can be evaluated as 0 in mathematical expressions. Maybe "Default" or something else is more suitable? I undersand that I can write separate wrappers for each number of arguments or handle each optional argument value and call target function with exact arguments number, but the goal is to keep code as clean and as simple as possible. So i have two questions: 1. What is the _proper_ and maybe universal way to pass optional parameters to wrapped functions? 2. Can I achive the same result without wrapping every function? Maybe some AutoIt execution flags to always popup a error that happens and stop execution?
- 2 replies
-
- autoit
- optional parameter
-
(and 1 more)
Tagged with:
-
This script is intended to allow the user to move their mouse to the edge of their screen and have the mouse appear to the opposite end. When the user drags the mouse to the edge of a monitor there is a 300 millisecond delay before the mouse will wrap. This will give the user some time to change their mind and give some time for the taskbar to open if the user has it set to autohide. When the user drags a window or selection rectangle to the edge of a monitor the user will have 700 milliseconds to take advantage of the Windows 7 Snap feature. If the user has not moved the mouse from the edge within that time then the window will move to the opposite edge. When the user holds down the mouse wheel the wrap effect is disabled. Tested on Windows 7 x64 with two monitors placed horizontally. Updates: MouseWrap.zip - Source works on latest AutoIt beta. Includes an exe. downloads: 197