Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 02/13/2018 in all areas

  1. Features: Create modern looking borderless and resizable GUIs with control buttons (Close,Maximize/Restore,Minimize, Fullscreen, Menu) True borderless, resizeable GUI with full support for aerosnap etc. Many color schemes/themes included. See MetroThemes.au3 for more details. 3 type of Windows 8/10 style buttons. Modern checkboxes, radios, toggles and progressbar. All buttons, checkboxes etc. have hover effects! Windows 10 style modern MsgBox. Windows 10/Android style menu that slides in from left. Windows 10 style right click menu Credits: @UEZ, for the function to create buttons with text using GDIPlus. @binhnx for his SSCtrlHover UDF Changelog: Download UDF with example:
    1 point
  2. Hello, I'm passing all my applications AutoIT to UWP easily and without problems, you do not have to rewrite code or anything like that, just pack your application AutoIT as appx with the tools of the Windows10 SDK. It's very fast and simple. You just have to install the necessary tools. You can see all the necessary information in these Microsoft videos: https://MVA.Microsoft.com/en-US/Training-courses/Developers-Guide-to-the-Desktop-Bridge-17373?l=agAXF2WhD_3506218965 I've already tried it and it works perfectly. It would also be valid for any written desktop application with any other programming language. I hope you've been helpful. Autoit has a new life in WINDOWS10.
    1 point
  3. Danp2

    A simple google search

    Have you tried _IEFormSubmit instead of _IEAction?
    1 point
  4. Jos

    Get AutoItSetOption value

    ConsoleWrite('this part is just text also called literal string = ' & AutoItSetOption( "WinTitleMatchMode" ) & @CRLF ) So that line simply concatenates a String with the result of the function: AutoItSetOption( "WinTitleMatchMode" ) and concatenates a CRLF at the end. Jos
    1 point
  5. Jos

    Get AutoItSetOption value

    Because you are telling AutoIt3 to write that exact literal string: 'AutoItSetOption( "WinTitleMatchMode" )' ... not to perform the function. Just try understanding the scriptline I wrote. Jos
    1 point
  6. Jos

    Get AutoItSetOption value

    What were you expecting as that statement will return the current value but you aren't doing anything with it. In case you were expecting a Console message you need to tell the script to do so like: ConsoleWrite('AutoItSetOption( "WinTitleMatchMode" ) = ' & AutoItSetOption( "WinTitleMatchMode" ) & @CRLF ) Jos
    1 point
  7. @youtuber It's an example of Shell using #include <Timers.au3> ; Start error catching. Local $oMyError = ObjEvent("AutoIt.Error","MyErrFunc") ; COM error handle ; Create a gui for _Timer usage. Local $hGUI = GUICreate("") ; Website we want to take a source. Local $sWebsite = "https://www.autoitscript.com/forum/" ; Set time for actions delay. Local $fTime = 0 ; Create an object. Local $oShell = ObjCreate("Shell.Explorer.2") ; Exit if $oShell isn't object. If Not IsObj($oShell) Then ConsoleWrite("+++ Error durining creating Shell object." & @CRLF) Exit EndIf ; Create an graphic interface. Need for works. GUICtrlCreateObj($oShell, -1, -1) ; Set execute timer each 200ms _Timer_SetTimer($hGUI, 200, 'Example') ; Create infinite loop. For $i = 0 To 100000000000000 Sleep(10) ConsoleWrite("Look loop still working durining reading object.." & $i & @CRLF) Next Func Example($1, $2, $3, $4) ; Execute action shellGetSource($oShell) EndFunc Func shellGetSource(ByRef $oObj) ; Get current time delay to avoid spam Local $fDelay = TimerDiff($fTime) ; When delay lower than 2s stop actions. If $fDelay < 2000 Then Return False EndIf ; Navigate to web Local $bNavigate = shellNavigate($oObj, $sWebsite) ; Set time to make a smooth loop. $fTime = TimerInit() ; Page is not ready break function If Not $bNavigate Then Return False EndIf ; Page is ready lets read a body. HERE IS OUR WEBSITE IN HTML Local $sHtmlBody = $oObj.document.body.innerHTML ; Make sure that all is ok If StringLen($sHtmlBody) > 100 Then ; All is ok ConsoleWrite("Succesfully read a web. " & $sWebsite & @CRLF) Else ; Error rised! ConsoleWrite("+++ Error durining get website source. " & $sWebsite & @CRLF) EndIf ConsoleWrite($sHtmlBody) ; Exit program Exit EndFunc Func shellReadyState(ByRef $oObj, $sUrl) ; Check web for current url. If $oObj.locationURL = $sUrl Then ; Check if site is ready. If $oObj.readyState = 4 Then ; Second check for some webs. If String($oObj.document.readyState) = "complete" Then ; Web already ready Return True EndIf EndIf EndIf ; Web dont ready yet. Return False EndFunc Func shellNavigate(ByRef $oObj, $sUrl) ; Check if page is alredy loaded If shellReadyState($oObj, $sUrl) Then ; Page ready! Return True EndIf ; Navigate to source website. $oObj.Navigate($sUrl) ; Page not ready! Return False EndFunc Func MyErrFunc() Local $HexNumber = hex($oMyError.number,8) ConsoleWrite("We intercepted a COM Error !" & @CRLF & @CRLF & _ "err.description is: " & @TAB & $oMyError.description & @CRLF & _ "err.windescription:" & @TAB & $oMyError.windescription & @CRLF & _ "err.number is: " & @TAB & $HexNumber & @CRLF & _ "err.lastdllerror is: " & @TAB & $oMyError.lastdllerror & @CRLF & _ "err.scriptline is: " & @TAB & $oMyError.scriptline & @CRLF & _ "err.source is: " & @TAB & $oMyError.source & @CRLF & _ "err.helpfile is: " & @TAB & $oMyError.helpfile & @CRLF & _ "err.helpcontext is: " & @TAB & $oMyError.helpcontext _ ) SetError(1) Endfunc @mLipok When i try to call a website to download a file or a lot of data via winhttp or InetRead my app got freeze until this action has end.
    1 point
  8. Hola All this functions are bad writen by AutoIt creators. They freeze your app until don't finish work. Personally use COM object Shell.Explorer.2 for this action.
    1 point
  9. Nope, can't figure it out. The problem exsists without MetroGUI. Same problem when using _ArrayDisplay. Script just hangs up when you start GUIs from WM_Notify. I remember giving up with TV-Show-Manager when I had this problem and it worked all by it self I will need check out a few scripts of mine where it worked, maybe I am missing something. Example script to demonstrate the problem: #include <GUIConstantsEx.au3> #include <GUIListView.au3> #include <WindowsConstants.au3> #include <Array.au3> $MainGUI = GUICreate("Alert", 940, 306, -1, -1, $WS_POPUP, -1) GUICtrlCreateLabel("Alert", 400, 8, 99, 27) $ListView1 = GUICtrlCreateListView("a|n|n|n|x", 2, 48, 936, 217) GUICtrlCreateListViewItem("1|2|3|4|5", $ListView1) GUISetState(@SW_SHOW, $MainGUI) GUIRegisterMsg($WM_NOTIFY, "WM_NOTIFY") While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit EndSwitch WEnd Func _RightClick($TicketID) Local $ButtonsArray[2] = ["btn1", "btn2"] _ArrayDisplay($ButtonsArray) EndFunc ;==>_RightClick Func WM_NOTIFY($hwnd, $iMsg, $iwParam, $lParam) #forceref $hwnd, $iMsg, $iwParam Local $tNMHDR = DllStructCreate($tagNMLISTVIEW, $lParam) Local $hWndFrom = HWnd(DllStructGetData($tNMHDR, "hWndFrom")) Local $iCode = DllStructGetData($tNMHDR, "Code") Switch $hWndFrom Case GUICtrlGetHandle($ListView1) Switch $iCode Case $NM_RCLICK _RightClick(0) EndSwitch EndSwitch Return $GUI_RUNDEFMSG EndFunc ;==>WM_NOTIFY
    1 point
  10. I tested it multiple times, can't reproduce it. Maybe you can test the version i posted on the previous page. I am having the same problem right now I am using WM_NOTIFY but with the same result. It seems like spawning a GUI from registered messages causes a bug. I remember having the same problem with my TV-Show-Manager when I was working on it but it somehow worked suddenly, I don't know what the problem was. I will let you know when I figure it out.
    1 point
  11. I have tried these two methods and they both save a file. Method 1 ; open the file that the results will be written to Local $h_File = FileOpen(@ScriptDir & '\chayngay.txt', $FO_OVERWRITE + $FO_CREATEPATH) ; write the text with the duplicates removed FileWrite($h_File, _ StringRegExpReplace( _ ; start the string replacement StringRegExpReplace(FileRead(@ScriptDir & '\link.txt'), '(?msx)(?i)(^http:\/\/www\. .+$)(?= .* \1)', ''), _ ; remove the duplicate links Credit to AsprinJunkie "(?m)^\s*$\R?", "")) ; remove the blank lines credit to Mikell https://www.autoitscript.com/forum/topic/191985-how-to-delete-blank-lines-in-txt-file-with-stringregexpreplace-method/?do=findComment&comment=1377392 FileClose($h_File) ; close the file Method 2 using the code in post #10. Filewrite has been changed to _FileWriteFromArray() $link = FileReadToArray(@ScriptDir & '\link.txt') $unique = _ArrayUnique($link) _FileWriteFromArray(@ScriptDir & '\chayngay.txt', $unique, 1) _ArrayDisplay ($unique)
    1 point
×
×
  • Create New...