Jump to content

mLipok

MVPs
  • Posts

    12,089
  • Joined

  • Last visited

  • Days Won

    70

mLipok last won the day on September 26

mLipok had the most liked content!

About mLipok

  • Birthday 07/19/1978

Profile Information

  • Member Title
    Sometimes... even usually I'm nitpicky.
  • Location
    Europe, Poland, Upper Silesia, Zabrze
  • Interests
    ¯\_(ツ)_/¯

Recent Profile Visitors

33,584 profile views

mLipok's Achievements

  1. btw Reading the documentation, I couldn't grasp the difference at first—I had to run the example files and perform some tests. Perhaps it’s because my English is still not very good, or maybe I’m just getting old and grumpy
  2. Thanks for your answer. According to: I agree that: looks perfectly fine in my understanding. But for this case: This descripion is for me a little misleading. After your explanations I would rather expect a description like this ps. Perhaps it is a matter of a different way of thinking, shaped by the language we use every day—but that is precisely how I “perceive” the translation of this description in relation to these two distinct functions.
  3. https://www.autoitscript.com/wiki/AutoIt_Programs#Games_made_in_AutoIt Mentioned Here:
  4. Mario ? Giana ?
  5. docs for: _GUICtrlTreeView_GetNextSibling() _GUICtrlTreeView_GetNextChild() are saying the same: Could anybody propose some fix for their descriptions ?
  6. According to Chilkat https://github.com/mlipok/ManifestManagement.au3/tree/main https://github.com/mlipok/ManifestManagement.au3/blob/main/examples/chilkat.manifest also soon: https://github.com/mlipok/ManifestManagement.au3/blob/main/examples/chilkat.au3 Which shows how ***Async() function works with Task object.
  7. Ha. Long time I wasn't aware that this is essentially the same solution as the one described here: It turns out that this awesome feature was first made available to the community of this forum by @ptrex and until now I thought it was by @trancexx More info about RegFreeCom https://github.com/mlipok/ManifestManagement.au3
  8. some new findings: https://github.com/mlipok/ManifestManagement.au3/blob/main/README.md
  9. Hi everyone, I’d like to share WebView2.au3, a native AutoIt UDF for embedding Microsoft Edge WebView2 in AutoIt GUI applications. The UDF talks to the Win32 WebView2 COM interfaces directly from AutoIt. It does not require a C#/.NET bridge, a registered ActiveX control, a WebDriver executable, or a separate browser automation server. What it can do Run with x86 or x64 AutoIt using the matching WebView2Loader.dll. Host multiple WebView2 instances and manage application-level tabs. Navigate to URLs or HTML content, execute JavaScript, and exchange messages between AutoIt and the page. Handle navigation events, title changes and new-window requests. Locate and interact with DOM elements using CSS selectors, XPath and other locator strategies. Wait for elements or script conditions, work with forms and tables, and access local or session storage. Capture screenshots and export PDF or MHTML to files or in-memory data. Use DevTools and selected Chrome DevTools Protocol features. Check the installed WebView2 Runtime and obtain diagnostic information through @error, @extended and configurable logging. For users of the standard AutoIt IE.au3 UDF The project includes IE.au3-style migration helpers for common tasks involving documents, forms, elements, links, images, tables and frames. They are intended to make existing AutoIt code easier to adapt to WebView2. These helpers operate on the modern Chromium-based WebView2 control; they do not create Internet Explorer COM objects or reproduce every behavior of the Internet Explorer engine. The repository documents the available mappings and differences. Requirements Windows with a compatible Microsoft Edge WebView2 Runtime; AutoIt 3.3.18.0 or newer recommended; a WebView2Loader.dll matching the AutoIt process architecture. The source code, installation instructions, API reference, examples and known limitations are here: https://github.com/mlipok/WebView2.au3-NativeAutoIt3-UDF Origins and acknowledgements This project grew out of the AutoIt Forum discussion about embedding WebView2, which I started in 2020. LarsJ demonstrated the native AutoIt techniques that form the technical foundation: loading WebView2Loader.dll, using COM interfaces through ObjCreateInterface(), defining interface tags and handling callbacks. Related callback and ObjectFromTag research by trancexx also informed the implementation. Dan Pollak (Danp2) and au3WebDriver inspired selected API, DOM automation and diagnostic patterns. Examples by Ioa747 from NetWebView2Lib provided the basis for a separately credited set of example adaptations. The migration layer also draws on the familiar conventions of AutoIt’s standard IE.au3 UDF. I develop and maintain the current native WebView2 UDF as mLipok. Thank you to these authors and the other AutoIt community contributors. Detailed attribution and third-party licenses are recorded in the repository’s NOTICE.md. Project status and support This is an early release. Static checks and selected x86/x64 runtime tests have been completed, but not every example or host application has been verified interactively. Please review the known limitations before using a feature in production. I welcome questions, suggestions, bug reports and examples of how you use the UDF. For a bug report, please include a minimal reproducing script, your AutoIt version and architecture, WebView2 Runtime version, and any @error, @extended or diagnostic output. EDIT 1: AI assistance: Parts of this UDF, its examples and documentation were developed with the assistance of ChatGPT Codex. The project is released under the MIT License; see the repository for the license terms.
  10. I hit a problem in: Func __WinAPI_GetTcpTable() ;funkey 2012.12.14 ;https://www.autoitscript.com/forum/topic/146671-getextendedtcptable-get-netstat-information/?tab=comments#comment-1038649 Local Const $aConnState[12] = ["CLOSED", "LISTENING", "SYN_SENT", "SYN_RCVD", "ESTABLISHED", "FIN_WAIT1", _ "FIN_WAIT2", "CLOSE_WAIT", "CLOSING", "LAST_ACK", "TIME_WAIT", "DELETE_TCB"] Local $tMIB_TCPTABLE = DllStructCreate("dword[6]") Local $aRet = DllCall("Iphlpapi.dll", "DWORD", "GetTcpTable", "struct*", $tMIB_TCPTABLE, "DWORD*", 0, "BOOL", True) Local $dwSize = $aRet[2] $tMIB_TCPTABLE = DllStructCreate("DWORD[" & $dwSize / 4 & "]") $aRet = DllCall("Iphlpapi.dll", "DWORD", "GetTcpTable", "struct*", $tMIB_TCPTABLE, "DWORD*", $dwSize, "BOOL", True) If $aRet[0] <> 0 Then Return SetError(1) Local $iNumEntries = DllStructGetData($tMIB_TCPTABLE, 1, 1) Local $aRes[$iNumEntries][6] For $i = 0 To $iNumEntries - 1 $aRes[$i][0] = DllStructGetData($tMIB_TCPTABLE, 1, 2 + $i * 5 + 0) ConsoleWrite(@ScriptLineNumber & ' > ' & $aRes[$i][0] & @CRLF) $aRes[$i][1] = $aConnState[$aRes[$i][0] - 1] the $aRes[$i][0] in the console returns 0 I have and as so far I have such solution: For $i = 0 To $iNumEntries - 1 $aRes[$i][0] = DllStructGetData($tMIB_TCPTABLE, 1, 2 + $i * 5 + 0) Local $iConnState = $aRes[$i][0] If $iConnState >= 1 And $iConnState <= UBound($aConnState) Then $aRes[$i][1] = $aConnState[$iConnState - 1] Else ; Keep the row and its local port even when Windows reports an unknown state. $aRes[$i][1] = 'UNKNOWN (' & $iConnState & ')' EndIf what do you think about.
  11. to all interested in: https://github.com/WinMerge/winmerge/pull/3685
  12. There was some one ... I had a deperesion in the past few years so I stoped to be so nitpicky ... and became more friendly.
×
×
  • Create New...