Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 04/26/2022 in all areas

  1. water

    Advanced.Help

    Version 1.5.0.1

    940 downloads

    The F1 key in SciTE displays the documentation for the word on which the cursor is located. Up to now this was only available for AutoIt. But times change and we change with them Now with Advanced.Help ANY CHM help file (Compressed HTML Help) can be called with the F1 key. The only prerequisite: All function names have to start with the same identifier (like _AD_, _OL_ etc.). This tool, created by BugFix from the german forum and the help of Musashi, allows custom CHM help files to be included in SciTE. The existing help key is used to call either the AutoIt help or the corresponding custom help. Depending on which keyword the cursor is currently on. For unknown keywords the AutoIt help is called. For AutoIt a separate window is opened and for the user-defined UDFs another window is opened, so you can work with both helps at the same time. The ZIP file contains an installation guide in German (Install_Deutsch.txt) and English (Install_English.txt) in which the installation and configuration is described in detail. Most CHM help files come with UDFs you can download from this forum section (AD, OutlookEX, TaskScheduler). In addition we have added the preliminary release of the WebDriver help file. The most current CHM help file is now only distributed with the WebDriver UDF. BTW: If you like this UDF please click the "I like this" button. This tells me where to next put my development effort Known Bugs: (last changed: 2022-07-20) None
    1 point
  2. @mLipok Yep : #include "include\wd_core.au3" #include "include\wd_helper.au3" Global $sUrlExample = "https://getbootstrap.com/docs/4.0/components/forms/" _Setup_IEDriver() Global $sWDSession = _WD_CreateSession($sDesiredCapabilities) _WD_Navigate($sWDSession, $sUrlExemple) _WD_LoadWait($sWDSession) _form_example("Test@test.fr", "azerty123456") Func _form_example($sEmail, $sPassword) Local $sEmailInput = _WD_GetElementByID($sWDSession, "exampleInputEmail1") _WD_ElementAction($sWDSession, $sEmailInput, "VALUE", $sEmail) Local $sPasswordInput = _WD_GetElementByID($sWDSession, "exampleInputPassword1") _WD_ElementAction($sWDSession, $sPasswordInput, "VALUE", $sPassword) Local $sCheckBox = _WD_GetElementByID($sWDSession, "exampleCheck1") _WD_ElementAction($sWDSession, $sCheckBox, "click") EndFunc Func _Setup_IEDriver() _WD_Option('Driver', @ScriptDir & '\include\' & (@Compiled ? '' : 'Exe_externe\') & 'IEDriverServer.exe') _WD_Option('DriverParams', '--log trace ') _WD_Option('Port', 5555) $sDesiredCapabilities = '{"capabilities": {"alwaysMatch": { "se:ieOptions" : {"ie.edgepath":"C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe", "ie.edgechromium":true, "ignoreProtectedModeSettings":true, "args" : ["start-maximized", "disable-infobars"]}}}}' _WD_Startup() EndFunc ;==>_Setup_IEDriver OS : Windows 10 Autoit version : 3.3.16.0 Webdriver UDF : 0.8.1 WinHttp : 1.6.4.2 Driver : IE Driver Server version 4.0.0.0 (32 Bit)
    1 point
  3. Yes. Since you havent provide anything for us to work with, that's the best answer I can give you...
    1 point
  4. [New Version] - 16 Apr 2022 Added: A new function _GUIExtender_Hidden_Control which allows you to specify which controls should not be automatically reshown when it redraws the GUI. You no longer need to hide/show the control within the script - this function does that as well as telling the UDF whether or not to show it on redraw. New UDF and an additional example in the first post. M23
    1 point
  5. However, there is a it took me several hours to figure out how to do it on other windows in runtime, so I tought it might help others. So you want to remove buttons like this: #include <WinAPI.au3> #include <Constants.au3> #include <WindowsConstants.au3> $h = WinGetHandle("Untitled - Note") $iOldStyle = _WinAPI_GetWindowLong($h, $GWL_STYLE) ConsoleWrite("+ old style: " &amp;amp; $iOldStyle &amp;amp; @CR) $iNewStyle = BitXOr($iOldStyle, $WS_MINIMIZEBOX, $WS_MAXIMIZEBOX) _WinAPI_SetWindowLong($h, $GWL_STYLE, $iNewStyle) _WinAPI_ShowWindow($h, @SW_SHOW) or remove even the close button: instead of $iNewStyle = BitXOr($iOldStyle, $WS_MINIMIZEBOX, $WS_MAXIMIZEBOX)use $iNewStyle = BitXOr($iOldStyle, $WS_SYSMENU) The cool part about these is that you can still close the window with ALT+F4 or minimize it clicking the tray icon. The trickiest part caused me the biggest headache that if you just set the window style with a SetWindowLong() API call, but don't run _WinAPI_ShowWindow($h, @SW_SHOW) the following can happen. To show up properly after the style change, I tried redrawing the window, redrawing everything, sending WM_PAINT message to the Window, calling SetWindowLong() with different handles and options, nothing worked, until I found this comment. So it is very important to run it after setting the style. You can find more about Window styles on MSDN or Autoit help Now, what if you want only disable the buttons, but don't want to remove them ? Like this: (The close button is "greyed" out, the other two are still visible. but if you click them, nothing happens.) The following forum topic solution is very good: You can disable any of you want with these functions: ; Constants from http://msdn.microsoft.com/en-us/library/windows/desktop/ms646360(v=vs.85).aspx Const $SC_CLOSE = 0xF060 Const $SC_MOVE = 0xF010 Const $SC_MAXIMIZE = 0xF030 Const $SC_MINIMIZE = 0xF020 Const $SC_SIZE = 0xF000 Const $SC_RESTORE = 0xF120 Func GetMenuHandle($hWindow, $bRevert = False) If $bRevert = False Then $iRevert = 0 Else $iRevert = 1 EndIf $aSysMenu = DllCall("User32.dll", "hwnd", "GetSystemMenu", "hwnd", $hWindow, "int", $iRevert) ConsoleWrite("+ Menu Handle: " &amp;amp; $aSysMenu[0] &amp;amp; @CRLF) Return $aSysMenu[0] EndFunc Func DisableButton($hWindow, $iButton) $hSysMenu = GetMenuHandle($hWindow) DllCall("User32.dll", "int", "RemoveMenu", "hwnd", $hSysMenu, "int", $iButton , "int", 0) DllCall("User32.dll", "int", "DrawMenuBar", "hwnd", $hWindow) EndFunc Func EnableButton($hWindow, $iButton) $hSysMenu = GetMenuHandle($hWindow, True) DllCall("User32.dll", "int", "RemoveMenu", "hwnd", $hSysMenu, "int", $iButton , "int", 0) DllCall("User32.dll", "int", "DrawMenuBar", "hwnd", $hWindow) EndFunc by calling the functions like this: DisableButton($handle, $SC_CLOSE) DisableButton($handle, $SC_MAXIMIZE) DisableButton($handle, $SC_RESTORE) DisableButton($handle, $SC_MINIMIZE)Same with EnableButton(). If you disable $SC_SIZE, the window will not be resizeable with the mouse. If you disable SC_MOVE, you also cannot move it. Note: everything was tested on Windows 7 with Aero theme. On other system you might not have the same problem (window becoming a ghost after style update). If you test it on other system, please make a feedback about it ! Hope this helps somebody !
    1 point
  6. Instead of a ShowWindow() call I would recommend a SetWindowPos() with SWP_FRAMECHANGED. SetWindowLong - See Remarks http://msdn.microsoft.com/en-us/library/windows/desktop/ms633591%28v=vs.85%29.aspx SetWindowPos - See Remarks http://msdn.microsoft.com/en-us/library/windows/desktop/ms633591%28v=vs.85%29.aspx #include <WinAPI.au3> #include <Constants.au3> #include <WindowsConstants.au3> Run("notepad.exe") $timer = TimerInit() While Sleep(10) ; $hWnd = WinGetHandle("Unbenannt - Editor") $hWnd = WinGetHandle("Untitled - Note") If IsHWnd($hWnd) Then ExitLoop If TimerDiff($timer) > 10000 Then Exit 1 WEnd Sleep(2000) $iOldStyle = _WinAPI_GetWindowLong($hWnd, $GWL_STYLE) ConsoleWrite("+ old style: " & $iOldStyle & @CR) $iNewStyle = BitXOR($iOldStyle, $WS_MINIMIZEBOX, $WS_MAXIMIZEBOX) _WinAPI_SetWindowLong($hWnd, $GWL_STYLE, $iNewStyle) ; _WinAPI_ShowWindow($h, @SW_SHOW) _WinAPI_SetWindowPos($hWnd, 0, 0, 0, 0, 0, BitOR($SWP_FRAMECHANGED, $SWP_NOMOVE, $SWP_NOSIZE))
    1 point
  7. Does this help? >> Edit: Actually look at the style $WS_DLGFRAME
    1 point
×
×
  • Create New...