-
Posts
7,158 -
Joined
-
Days Won
89
Reputation Activity
-
TheDcoder reacted to WildByDesign in JSON UDF in pure AutoIt
Absolutely. Please keep in mind that I am a complete AutoIt rookie.
The examples show JSON code already in the example scripts as Global variables and parse/manipulate from there.
The thing that would help a rookie like me the most would be to have an example script and an example .json file. The script would load the .json file from disk, parse json, modify some data and save those changes back to .json file on disk.
That would have helped my rookie situation a lot. However, I also understand that some of that is outside of the responsibility for the UDF. But from an example perspective still would be beneficial.
By the way, thank you all for your help. Cheers!
-
TheDcoder reacted to SOLVE-SMART in JSON UDF in pure AutoIt
Don't belittle yourself so much 😅 , your knowledge of AutoIt isn't bad at all.
But I get your point @WildByDesign , yes. For beginners with JSON a proper example flow would be helpful.
🤝
-
TheDcoder got a reaction from WildByDesign in JSON UDF in pure AutoIt
Once it is parsed the array is the same as any other Array in AutoIt , when you're done with modifying the array you can simply pass it as the value to your favourite JSON function without any additional steps
-
TheDcoder got a reaction from Musashi in JSON UDF in pure AutoIt
Once it is parsed the array is the same as any other Array in AutoIt , when you're done with modifying the array you can simply pass it as the value to your favourite JSON function without any additional steps
-
TheDcoder got a reaction from WildByDesign in JSON UDF in pure AutoIt
You'll have to parse the array first and then manually insert the correct index into your commands. If you want to do it in a "cleaner" way, you can just modify the Array in AutoIt and insert the whole thing back with your changes.
-
TheDcoder reacted to SOLVE-SMART in JSON UDF in pure AutoIt
Here a example how you can do it with jq directly instead of using the JSON.au3 UDF.
Don't get me wrong, I like the JSON library (UDF) from @AspirinJunkie - he already knows that.
I simply try to give you another perspective how you can handle a JSON file with a widespread (AutoIt independent) library.
In case you want to stick with AutoIt, no problem, use the JQ adaption of @TheXman who creates this lovely json-processor.
Best regards
Sven
-
TheDcoder got a reaction from SOLVE-SMART in JSON UDF in pure AutoIt
You'll have to parse the array first and then manually insert the correct index into your commands. If you want to do it in a "cleaner" way, you can just modify the Array in AutoIt and insert the whole thing back with your changes.
-
TheDcoder reacted to Jon in AutoIt v3.3.17.1 Beta
AutoIt v3.3.17.1 Beta
View File 3.3.17.1 (July 08, 2025) (Beta)
AutoIt:
UDFs:
- Fixed: Typo in variable name in Date.au3 introduced in previous beta.
3.3.17.0 (June 29, 2025) (Beta)
AutoIt:
- Changed: Windows 7/Server 2008 is now the minimum OS version required due to dev environment changes.
- Added #3891: DllCall() performance optimisation.
- Added: Standard Windows Fonts List for Win10/Win11.
- Added #3906: GUICtrlCreateXXX creation in example assign to $idXXX to reflect Ctrl type.
- Added: FileGetAttrib() retrieve Join folder (J) as created by FileCreateNTFSLink().
- Added: Split WindowsConstants.u3 in WindowsNotifsConstants.au3, WindowsStylesConstants.au3 and WindowsSysColor.au3.
- Added: #3984: GUICtrlSetGraphic() doc precision.
- Fixed: Doc Chr(0) handling inside functions.
- Fixed #3923: Doc typo in "Send Key List".
- Fixed: Regression #3135 handle leak (Thanks Nano, Rudi, Nine).
- Fixed #3925: Doc With ... EndWith using DllStruct Type.
- Fixed: Links in Tutorials example code (thanks argumentum).
Au3info:
- Added: Display mouse coordinate mode.
- Fixed #3917: Crash under Win7.
SciTE-Lite:
- Fixed: Folding Fix for #Preprocessor foldblock when followed by a CommentBlock.
UDFs:
- Added: script examples when running under Win11 with new notepad.exe.
- Added: _GUICtrlTreeView_GetItemByIndex() can retrieve handle of the list of main item ($hItem= -1).
- Added: _IsPressed() can be called with numeric value as in "WinAPIsvkeysConstants.au3".
- Added #3909: _DebugReportData() to report Array column formatted.
- Added: libExamples referring MemoWrite() now refer to _MemoWrite() defined in Extras\HelpFileInternals.au3.
- Added: _WinAPI_WaitSystemIdle(), _WinAPI_QueryDiskUsage(), _WinAPI_QueryProcessorUsage(), _WinAPI_QueryProcessCycleTime()
- Added: Doc _WinAPI_GetWindowSubclass() example (Thanks pixelSearch).
- Added: _WinAPI_GetKeyboardLayout() default value for the running thread.
- Added: _WinAPI_GetUserDefaultLCID() example.
- Added: _WinAPI_GetKeyboardLayoutLocale().
- Added: _WinAPI_GetKeyboardState() example (Thanks AutoXenon).
- Added #3932: Try to use file in HelpFile\Extras instead of @ScriptDir.
- Added #3934: _WinAPI_SetTimer() example.
- Added: _IsPressed() can wait on one of several keys.
- Added: _WinAPI_SendInput().
- Added #3960: _Div() integer division.
- Added #3963: _WinAPI_OpenEvent().
- Added: _GDIPlus_ImageSaveToFile() doc precision for compression level.
- Added: _WinAPI_GetCursorSize() and _WinAPI_SetCursorSize().
- Added: $FOLDERID_Documents Constants in APIShellExConstants.au3.
- Added: Support _GUIToolTip*() to be used to external process.
- Added: Support _GUICtrlHeader*() to be used to external process.
- Added: Support _GUICtrlStatusBar*() to be used to external process.
- Added #3988: _WinAPI_GetSystemPowerStatus() return Battery status saver.
- Added #3985: _ArrayDisplay() + $WS_EX_TOPMOST.
- Added #3991: _SQLite_ForeignKeys() and Add a parameter in _SQLite_Open() to set it also.
- Added #3990: _IsPressed() return in @extended if the key is still pressed.
- Added: _DebugSetup(..., 1) does not interact with script being debug, Report infos copied to clipboard
- Added: _WinAPI_SetWindowTheme() example to demonstrate Checkbox or Radio controls coloring.
- Added #3997: _WinAPI_RegisterShellHookWindow() example improvement.
- Added #3999: _WinAPI_OemToChar() performance improvement.
- Added #3946: _ChooseFont() updated defaults (thanks argumentum).
- Added: _DateDiff(), _DateAdd() using array for [days, hours, minutes, seconds].
- Added: _DebugSetup() Type 6, same as 1 but a timeout to close the report log windows.
- Fixed #3894: _WinAPI_GetProcessName() returns incorrect result when process ID is invalid.
- Fixed: "Then SetError()" in several standard UDF.
- Fixed #3921: Missing _GUICtrlStatusBar_SetParts() examples.
- Fixed: Doc typo $GPIP_ERR* >> $GDIP_ERR*.
- Fixed #3926: _GUICtrlTreeView_SetChildren() not set/reset chidren flag.
- Fixed: _WinAPI_DisplayStruct() elements containing chr(124).
- Fixed #3945: StringRegExp() /s include VT.
- Fixed #3949: _ArrayDisplay() does show multiple subscript of an array.
- Fixed #3954: links in libfunction constants.
- Fixed: missing doc description $iSubItem = - 1 in _GUICtrlListView_SetItemText().
- Fixed #3959: _WinAPI_ShellUserAuthenticationDlg() example.
- Fixed #3975: unrelated link in Pcre doc.
- Fixed #3903: _GuiCtrlTab_GetItem() does work on external process.
- Fixed #3992: _WinAPI_DwmSetWindowAttribute() does not support all MSDN attributes.
- Fixed #4001: _GUICtrlListView_*() example ($tagNMITEMACTIVATE).
- Fixed #4003: _ArrayPush() doc precision.
- Fixed: _GUICtrlButton_SetSplitInfo() example crash.
- Fixed: Support of Notepad under Win11 for _DebugSetup().
- Fixed #4022: Various doc duplicated words.
- Fixed #4031: _DebugArrayDisplay() buttons display.
- Fixed: _DebugArrayDisplay() not executed if @error on entering ($ARRAYDISPLAY_CHECKERROR if no display wanted on @error).
- Fixed #4033: _DateTimeSplit() setting $aTimePart[0] whem no time defined.
- Fixed #4024: _DebugSetup(,, 5) (notepad window) not working under Windows 11.
- Fixed: _WinAPI_IsElevated() @extended return value (Thanks Argumentum).
- Fixed #4039: _GUICtrlTreeView_Delete() with $hWnd.
- Fixed #4038: _GUICtrlRichEdit_StreamToFile() extra new paragraph.
- Fixed #4029: _Date_Time_SystemTimeToDateTimeStr() Wrong output.
- Fixed #4040: _GUICtrlRichEdit_SetZoom() parameter limitation bug.
- Fixed #4041: _GUICtrlStatusBar_SetIcon() not shown.
Submitter Jon Submitted 07/08/2025 Category Beta
-
TheDcoder reacted to Jon in GimageX updates
I've updated GImageX with the latest version of the ADK. (Dec 2024 version). Don't think the ADK version was the OP's issue. But updated it anyway.
-
TheDcoder reacted to Jon in GimageX updates
It's on my list to look at when I next have a dev spurt.
-
TheDcoder reacted to coderusa in The Experimental Autoit RPGenerator (IRC MOPRG Project) Python - Autoit - mIRC
Hey guys. Sorry for the lapse in updates. Been pecking away little by little at some RPG stuff, slow progress but still progress. Situation with my daughter is nearing it's foreseeable end, she'll be home in a couple weeks and once she gets settled in and the final motions are filed things will ease up greatly and I'll be able to focus more on RPG stuff and programming stuff in general. I've been jotting things down and working on some little things lately as I've been very busy in life lately, but its been for a good cause and worth the effort!
Do not worry, I've not stopped or forgotten about RPGenerator! Just been slow moving as I've had to move this project down my priority list more than I anticipated.
-
TheDcoder reacted to TheSaint in AutoIt GUI Creators (Designers)
One we overlooked, and have just discovered, has been added to the first post.
July 6, 2020 - ImGui in AutoIt - Advanced UI by thedemons
P.S. A very interesting project, that appeared to have much potential, but sadly the author seems to have disappeared not long after providing.
-
TheDcoder reacted to TheSaint in MD5 Compare
Updated to v1.3, a much improved version. See first post.
-
TheDcoder reacted to tebasuna51 in Overwrite a file without destroying the previous contents
Thanks all. Since my file isn't a text file, I need to open it as $FO_APPEND+$FO_BINARY.
If it opens as a text file by default, writing adds an unwanted extra chr(15) (?).
I use this to change the channel mask (4 bytes) of a wav file (maybe larger than 10 GB). Rewriting the entire file takes time and space.
-
TheDcoder reacted to TheSaint in Kobo Cover Fixer
Yeah, tell me about it.
And my usage essentially hasn't changed, from the first 18 months, where I had no real issue, until now. What has changed, is updates to my device, so clearly they screwed something or the number of ebooks on my device is a factor ... though to be sure, my Kobo device still has much more space free than used.
And as usual, I always treat my devices and drives well, which is carefully. I also never charge my devices, until almost flat ... be that ereader or phone or tablet etc. I eject properly, store and transport properly, etc etc.
My money is on nerdy coders and flawed management as being the real issue ... and I've seen that across many devices.
-
TheDcoder reacted to TheSaint in Kobo Cover Fixer
Latest v1.4 update now available, see the first post.
Some more improvements came to mind.
Latest Changes
Been busy, so missed doing the v1.3 upload.
For Your Interest
I finally managed to fix all the images on my Kobo device. This involved the images for the newest ebook additions to my device (around five), plus all the side loaded ebooks, where the images were either black & white instead of color or were badly sized, or in many cases, both. I then double checked the lot to be doubly sure all were now present & acceptable. I did that last with my program, and also with my Kobo device.
A Rehash Of My Situation
Latest News
So anyway, I finally had the image situation on my Kobo device, like I wanted.
But then of course, I needed to do a sync, to get my latest ebook purchase.
On this occasion a surprise waited for me ... Sync appeared to be working and actually completed ... WTF ... Why?
The first inkling I had of this, was my latest five acquisitions at Kobo, automatically went into 'Pending' status after the list was updated. They then proceeded to download, one after the other, then the device went into the 'downloading covers' state, which always takes a while to complete, but after several minutes did finish, then it did 'Annotations' etc and then the Sync completed.
WOW ... I could not believe it.
Reflections
So that's it for now, and going forward I will probably only reply further if new revelations come to light, or in response to posts from others.
I will finish up by saying how nice it is to see all the cover images on my Kobo device, when browsing or when putting the device to sleep. It had been too long since that was regularly the case.
Fingers crossed.
-
TheDcoder reacted to TheSaint in Kobo Cover Fixer
Latest update now available, see the first post.
Sometimes I make myself laugh ... which is probably a good thing.
I can be so sure I've come to end of thinking of new additions and changes, and then something else pops into my brain while asleep or during waking. Such happened today, and so we have another update. Basically, as I was waking, I was contemplating how best to approach working with the Kobo device today. I knew the battery was flat, and that it takes around an hour to charge, so I had that window before I then started getting USB connection issues due to the device being fully charged. So I wanted to make the most of it. That was when it occurred to me that some kind of guide via my program would be helpful in speeding things up etc. That meant having controls (buttons) indicate they were the one to click to get started etc. The first approach I thought of, was using a graphic rectangle around a button, that was colored red, and hide or show that as needed. I'd done that before in a couple of programs, but as I recalled it, it could be a bit tricky ... and I couldn't recall what programs I'd done it to, so would either have to spend time searching for one, or attempt to do it all again from scratch. Then I thought that colored text on the buttons could be almost as effective, so did that instead. Of course, you could color the buttons instead, but you can lose the visual of the push effect.
Latest Changes
Anyway, I did some of that stuff after creating or adding images to my Kobo device.
I managed to process over 100 entries today, and about a third of that was done before implementing the new auto NEXT option.
Aside from one ebook, which I need to redo, all the others worked a treat. I'm not sure what happened with that one ebook, but I had connected my Kobo device via wifi a couple of times since building my working list, and sometimes missing number sub-folders and images on them get created during a sync, so it could be related to that. I used my newish 'Restore' option to reset for that entry, but not yet redone it because my Kobo was fully charged and the USB connection started playing up again.
P.S. At this point I am not sure, if syncing sometimes causes a loss of number sub-folders and thus their contained cover images. In any case, I have been building a record with my program, and so I guess I will see if that ever happens, or is just the result of my device not downloading everything properly from Kobo.
-
TheDcoder reacted to TheSaint in Kobo Cover Fixer
Latest update now available, see the first post.
If I had only realized, there was so little to do, I would have included the changes in my last update. But I was too tired to investigate anything more yesterday.
Anyway, I checked today, and determined I needed to do very little, to get the FIX COVERS button code up-to-speed.
I've not changed anything substantial in the way it works, just some of the record keeping aspect.
See the following details.
Please be advised though, that I haven't tested the process yet ... not since I last tested at least 10 months ago.
It should work like it did previously, just with extra records.
Some related stuff follows.
This will hopefully be the last update, at least for a while, unless I find a bug.
So I am now seeing my program as version 1, and essentially as a full version, some incomplete aspects aside, which are not a requirement to use the program successfully. As I have stated previously, I probably won't ever complete those lesser aspects ... not unless I find I need to for something.
I now intend to use my program in earnest, which will test all the major elements, including the FIX COVERS button code.
Enjoy!
-
TheDcoder reacted to TheSaint in Kobo Cover Fixer
Latest update now available, see the first post.
I did a stack of work today on the program .... then did a stack more.
I started off with some improvements that had occurred to me since yesterday, then discovered a couple of bugs, then thought of some more improvements.
Then I discovered my Kobo device was almost flat, so a good time to work with it and test a bunch of things. That led to me finding things weren't as good as I wanted them to be, and that I hadn't completed some stuff that needed to be. So implemented a bunch of things and kept testing, and decided I needed to do a few more, and before you knew it most of the day had disappeared. Eventually my Kobo device was fully charged and so kept connecting and disconnecting, so no more testing, though I still had a bunch of things to code and test without needing my device.
Latest Changes
While not a huge list, it was a lot of work.
I'm pretty sure I still need to do more, especially as I haven't looked at the FIX COVERS code again, yet ... not for 10 months at least. I imagine the process still works okay, just needs some additional Log file recording (perhaps). and some visual updating to the list etc, and perhaps some other records.
Anyway, I am pleased to say that the many covers created on my Kobo device today, did the job and worked well. Only a few hundred left to do.
Those Fuschia colored rows are successful images copied to my Kobo device. Mostly it was three images per each ebook, but sometimes only one was required. If you look back at a previous screenshot, you can see what has changed.
-
TheDcoder reacted to TheSaint in Kobo Cover Fixer
Latest update now available, see the first post.
Okay, as I was waking today, it suddenly occurred to me that I had missed a very obvious improvement.
This was a Dropzone for quick and easy renaming and copying of a cover image file, in preparation for the main usage of my program.
So after pondering on how best to do that, with limited GUI space, I did the following ... optionally repurposed the 'Cover Image' preview field.
To do that, you need to enable it via a checkbox on the 'Settings' window.
So basically I did the following.
That means another level of automation, making things quicker and less fiddly etc.
Enjoy!
-
TheDcoder reacted to TheSaint in Kobo Cover Fixer
Latest update now available, see the first post.
Everything is now in a single ZIP file, including an EXE version.
While the program is still not fully complete, it is complete enough to do what it needs to, and I may never get around to fully implementing the Clone stuff etc.
Here's what I worked on today.
Here's the latest screenshots.
That's it.
Enjoy!
P.S. I am now going to start using my program in earnest, as a lot of cover image files are missing on my Kobo device. It will be a lengthy process though, with most of that taken up with retrieving image files for those ebooks, that luckily exist in my copy of calibre, and using the clipboard button to retrieve text, to rename them appropriately, before moving each image file to the 'Cover Images - Source' folder, and then refreshing the display of that folder content. I have two calibre library folders I need to keep swapping between - Digital Editions, which has all my DRM ebooks from Kobo, plus Kobo (DRM-Free), which is for ebooks that came DRM-Free from Kobo. While the greater number of my Kobo ebooks are in the Digital Editions library folder, I still have a lot in the Kobo (DRM-Free) library folder.
-
TheDcoder reacted to TheSaint in A simple help request
It's a watery based version of ChatGPT in bathers or swimsuit.
-
TheDcoder reacted to TheSaint in A simple help request
You are right.
And I even consulted with ChatGPT back then, but got nowhere.
Maybe I'm a bit smarter now, and perhaps ChatGPT is too.
In any case, we painstakingly worked our way through it all this time, and things were discovered that weren't last time.
The code covered in this topic is only half the Python code. Then ChatGPT and I worked on the other half, and solved that too.
My feedback to ChatGPT was vital, as it allowed it to explore other avenues, which in the end finally resulted in the solution. We went very deep, and I can now claim to have worked successfully with ChatGPT, and that without its help, I would not have succeeded.
As they say, if at first you don't succeed, then try try again.
-
-
TheDcoder reacted to TheSaint in Kobo Cover Fixer
Okay, I've now done away with the previously required Python executable and code.
Thanks to my persistence and the heavy lifting of ChatGPT, we finally wrestled a solution using pure AutoIt to get the correct numbered sub-folders for cover images for an ebook. You can read about some of that here.
NOTE - This was based on some Python code I found in a file of my calibre install. The original Python script can be found in the Other Dependencies.zip file.
See the first post for the updated downloads. The Other Dependencies.zip file is now around 7 MB smaller.
P.S. Please note that this has had minimal testing so far.