-
Posts
5,583 -
Joined
-
Last visited
-
Days Won
185
argumentum last won the day on January 25
argumentum had the most liked content!
About argumentum

- Currently Viewing Forums Index
Profile Information
-
Member Title
✨Universalist ✨
-
Location
I'm in your browser now =)
-
WWW
https://www.youtube.com/watch?v=SjwX-zMRxO0&t=5s
-
Interests
Relax
argumentum's Achievements
-
argumentum reacted to a post in a topic:
WebView2AutoIt - AutoIt WebView2 Component (COM Interop)
-
If|Then within Switch|Case
argumentum replied to mr-es335's topic in AutoIt General Help and Support
Read the help file. Try the examples. Copy the examples and change small parts until you understand them. If you have a question that is not in the help file, and not in the forum either, then I'll jump in and help. But if you don't know what basic coding tools there are, how can you formulate a question ?, or even apply common sense to your code !?. You have over 600 of these simple questions. Is time that you stop thinking of money and start understanding some basics, that will apply to all coding languages, not just AutoIt. If you do that you'll change the way you code. Because you'll change the logic in your rational thinking, because you'll remember that you can do it this or that way. But again, it'll start once you try the examples from the help file. And that is something that you should have done some 5 years ago. So no. Your code flow is wrong and you need to go to school. Go drink, smoke, play guitar or whatever you do to calm your impetuous personality, and think about what those that are harshly judging you are conveying. P.S.: Am not ignoring you ( never did ). But will not help with your code until you show some elegance, compared to your own prior style of course. Not asking for miracles. -
If|Then within Switch|Case
argumentum replied to mr-es335's topic in AutoIt General Help and Support
Yes my dear, believe it or not, you are asking exactly that. And I will continue to ignore your posts as I did before. I know others will come to your aid but they are not teaching you. And you're not learning 🤷♂️ -
argumentum reacted to a post in a topic:
Windows 11 security issue.
-
argumentum reacted to a post in a topic:
If|Then within Switch|Case
-
If|Then within Switch|Case
argumentum replied to mr-es335's topic in AutoIt General Help and Support
Not really. Just gave him a for loop example. The way it goes, is going to be a head scratcher for him. But after over 600 questions of always the same, c'mon !. The code is to tell him to slow down and learn. I've been there and do understand him. But in the end, there is only so much one gets done by copy and paste. Eventually the coder needs to know/learn or get ignored by the rest of the users Do you understand @mr-es335 that you are not in an "ignore list". You are just not showing independence of thought. Do learn or you'll be faced with more posts not been answered. And that is going to be painful as you already experienced this week in another post. Please do look at the help file we all actively contribute to maintain, and practice, practice, practice. -
If|Then within Switch|Case
argumentum replied to mr-es335's topic in AutoIt General Help and Support
...that is because: ... Local $iStart = 11, $iEnd = 10 Local $sFolder[$iStart] = [$iEnd] $sFolder[1] = "G:\AltPeakData" $sFolder[2] = "G:\Automation_Data" $sFolder[3] = "G:\CHT_Files" $sFolder[4] = "G:\ControlTrack_Data" $sFolder[5] = "G:\F-Key_Data" $sFolder[6] = "G:\Mix_Templates" $sFolder[7] = "G:\Prf_Data" $sFolder[8] = "G:\Scene_Data" $sFolder[9] = "G:\Session_Data" $sFolder[10] = "G:\Session_Master" ; ----------------- Local $iFolderExists[$iStart] = [$iEnd] $iFolderExists[1] = FileExists($sFolder[1]) $iFolderExists[2] = FileExists($sFolder[2]) $iFolderExists[3] = FileExists($sFolder[3]) $iFolderExists[4] = FileExists($sFolder[4]) $iFolderExists[5] = FileExists($sFolder[5]) $iFolderExists[6] = FileExists($sFolder[6]) $iFolderExists[7] = FileExists($sFolder[7]) $iFolderExists[8] = FileExists($sFolder[8]) $iFolderExists[9] = FileExists($sFolder[9]) $iFolderExists[10] = FileExists($sFolder[10]) ; ----------------- ... makes no sense. Why would you code it that way !?. It just don't make any sense. ... ; you can make a file and read from it or ; declare it just like this: $sFolders = "G:\AltPeakData" & @CRLF $sFolders &= "G:\Automation_Data" & @CRLF $sFolders &= "G:\CHT_Files" & @CRLF $sFolders &= "G:\ControlTrack_Data" & @CRLF $sFolders &= "G:\F-Key_Data" & @CRLF $sFolders &= "G:\Mix_Templates" & @CRLF $sFolders &= "G:\Prf_Data" & @CRLF $sFolders &= "G:\Scene_Data" & @CRLF $sFolders &= "G:\Session_Data" & @CRLF $sFolders &= "G:\Session_Master" & @CRLF ; then chop that into an array $aFolders = StringSplit($sFolders, @CRLF, 1) ; make the $aFolderExists array based of $aFolders Local $aFolderExists = $aFolders ; lazy way but it will work ; then use a for loop For $n = 1 To UBound($aFolders) - 1 If $aFolders[$n] = "" Then ContinueLoop $aFolderExists[$n] = FileExists($aFolders[$n]) ConsoleWrite(($aFolderExists[$n] = 0 ? '!' : '+') & ' This is at index ' & $n & ' and contains this string: "' & _ $aFolders[$n] & '" and does ' & ($aFolderExists[$n] = 0 ? 'not ' : '') & 'exist.'& @CRLF) Next ... You have over 600 posts and, what have you learned ?. You are going to have to slow down your hurry to get your code done. Because you lack flexibility. You don't know how to use a "for loop" and that is a shame. And do use the "F1" key in the editor. Most of the answers given to you are right there -
argumentum reacted to a post in a topic:
AutoIt Community (GitHub Organization)
-
mr-es335 reacted to a post in a topic:
If|Then within Switch|Case
-
argumentum reacted to a post in a topic:
WebView2AutoIt - AutoIt WebView2 Component (COM Interop)
-
argumentum reacted to a post in a topic:
Help File/Documentation Issues. (Discussion Only)
-
mLipok reacted to a post in a topic:
Help File/Documentation Issues. (Discussion Only)
-
If|Then within Switch|Case
argumentum replied to mr-es335's topic in AutoIt General Help and Support
;~ If Case = 0, I then need to call the "RestoreInitialFolderData()" function ;~ If Case = 1, I then need to call the "Notice()" function Switch FileExists($sFolder[$i]) Case 1 $sResult = "The folder [" & $sFolder[$i] & "] DOES exist!" Notice() Case Else $sResult = "The folder [" & $sFolder[$i] & "] DOES NOT exist!" RestoreInitialFolderData() EndSwitch Edit: ...I have no idea. -
if running the VC distributable fix it, then that was that. Is not going to brake anything updating. Since you're chatting with the developer ( Jos ), I'll step out of the thread.
-
Can you open SciTE and edit scripts with it ?
-
oh, ok. Note to self: pay attention Update the https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170#latest-supported-redistributable-version files. Do both, x64 and x86 😅
-
The hardware is not relevant. How windows uploads and treats everything as a threat is. I only use wetware for viruses. No software, but that's me 🙃 Maybe it'll get faster with time. Else add excludes. Else, welcome to the future
-
Help File/Documentation Issues. (Discussion Only)
argumentum replied to guinness's topic in AutoIt Technical Discussion
The doc says "By default, the entire window is copied." So if you set 0, PW_CLIENTONLY is not set and PrintWindow calls GetWindowRect instead of GetClientRect PW_WINDOW = 0x0. ( uses GetWindowRect ) PW_CLIENTONLY = 0x1 ( uses GetClientRect ) PW_RENDERFULLCONTENT = 0x2 ( uses Windows.Graphics.Capture API ) ( am working.. at work, so I can't give it more attention right now ) -
Help File/Documentation Issues. (Discussion Only)
argumentum replied to guinness's topic in AutoIt Technical Discussion
what I meant by "Local Const $PW_RENDERFULLCONTENT = 0x2 ; this will go to where it should 😃" is that we need to add $PW_RENDERFULLCONTENT, PW_CLIENTONLY and PW_CLIENTGoFigure to the constants script. PW_CLIENTONLY used to be true/false. After Win8.1 PW_RENDERFULLCONTENT came along, and are now BitOR values. Given that is not documented, declaring PW_CLIENTONLY = 1 but we ( at least myself ) don't have a const. name for ZERO. PW_RENDERFULLCONTENT + PW_CLIENTONLY = 3, and works as such. We ( well, you @mLipok ) have to come with proper naming. Good luck Jim If you don't find a name, I'll look around and invent a proper sounding one -
ioa747 reacted to a post in a topic:
Help File/Documentation Issues. (Discussion Only)
-
argumentum reacted to a post in a topic:
Entering data into a spreadsheet.
-
Help File/Documentation Issues. (Discussion Only)
argumentum replied to guinness's topic in AutoIt Technical Discussion
...always disliked with a passion those inline examples with "Local" where "Global" goes. Encapsulating all that in an Example() is the way it should be. Looks good, thanks. -
mLipok reacted to a post in a topic:
Help File/Documentation Issues. (Discussion Only)
-
Help File/Documentation Issues. (Discussion Only)
argumentum replied to guinness's topic in AutoIt Technical Discussion
0x1 PW_CLIENTONLY Captures only the client area. 0x2 PW_RENDERFULLCONTENT Used to capture the full content, which is useful for modern applications. ...After some digging I found the following in the chromium source: "The PW_RENDERFULLCONTENT flag is undocumented, but works starting in Windows 8.1. It allows for capturing the contents of the window that are drawn using DirectComposition." UINT flags = PW_CLIENTONLY | PW_RENDERFULLCONTENT; ... maybe that's enough info for the help file ? Edit: updated the example I proposed. ...some extra info via AI -
Help File/Documentation Issues. (Discussion Only)
argumentum replied to guinness's topic in AutoIt Technical Discussion
ok, lets replace the example with this: #include <GUIConstantsEx.au3> #include <SendMessage.au3> #include <StaticConstants.au3> #include <WinAPIGdi.au3> #include <WinAPIGdiDC.au3> #include <WinAPIHObj.au3> #include <WindowsConstants.au3> ShellExecute(@SystemDir & '\calc.exe') Local $hWnd = WinWaitActive("[REGEXPCLASS:CalcFrame|ApplicationFrameWindow]", '', 3) If Not $hWnd Then Exit EndIf Sleep(300) ; give it time to draw ; Create GUI Local $iSize = WinGetPos($hWnd) Local $hForm = GUICreate('Test ' & StringReplace(@ScriptName, '.au3', '()'), $iSize[2] + 80, $iSize[3] + 80) Local $idPic = GUICtrlCreatePic('', 40, 40, $iSize[2], $iSize[3]) Local $hPic = GUICtrlGetHandle($idPic) ; Create bitmap Local $hDC = _WinAPI_GetDC($hPic) Local $hDestDC = _WinAPI_CreateCompatibleDC($hDC) Local $hBitmap = _WinAPI_CreateCompatibleBitmap($hDC, $iSize[2], $iSize[3]) Local $hDestSv = _WinAPI_SelectObject($hDestDC, $hBitmap) Local $hSrcDC = _WinAPI_CreateCompatibleDC($hDC) Local $hBmp = _WinAPI_CreateCompatibleBitmap($hDC, $iSize[2], $iSize[3]) Local $hSrcSv = _WinAPI_SelectObject($hSrcDC, $hBmp) Local Const $PW_RENDERFULLCONTENT = 0x2 ; this will go to where it should =) _WinAPI_PrintWindow($hWnd, $hSrcDC, $PW_RENDERFULLCONTENT) _WinAPI_BitBlt($hDestDC, 0, 0, $iSize[2], $iSize[3], $hSrcDC, 0, 0, $MERGECOPY) _WinAPI_ReleaseDC($hPic, $hDC) _WinAPI_SelectObject($hDestDC, $hDestSv) _WinAPI_SelectObject($hSrcDC, $hSrcSv) _WinAPI_DeleteDC($hDestDC) _WinAPI_DeleteDC($hSrcDC) _WinAPI_DeleteObject($hBmp) ; Set bitmap to control _SendMessage($hPic, $STM_SETIMAGE, 0, $hBitmap) Local $hObj = _SendMessage($hPic, $STM_GETIMAGE) If $hObj <> $hBitmap Then _WinAPI_DeleteObject($hBitmap) EndIf GUISetState(@SW_SHOW) Do Until GUIGetMsg() = $GUI_EVENT_CLOSE WinClose($hWnd, "") and @Nine, can you find a reference to that "2" flag to document it ? Or the info that should go there if there is no reference to be found ? -
Help File/Documentation Issues. (Discussion Only)
argumentum replied to guinness's topic in AutoIt Technical Discussion
where ? how ?