FindCleanCwIDE Utility to fix FIND popup dialog window appears slowly in IDE

Re Bruce’s thread “FIND popup dialog window appears slowly in IDE

I had 7000 Find Patterns and deleting those did make Find open much faster. More important to me, it fixed the problem that the drop list was not in Recent Order so I could not reuse recent searches.

I probably want to do this monthly or more, and on multiple machines, so I made a utility to make it easy. The list shows the Count and Bytes of Find and Replace. It scans the normal AppData location plus can do /ConfigDir as shown for 9.1 in Bin\Settings.

Before you shrink you can right click and “View Find Strings” in a list to see counts of what unique strings you search most. For me it was "Validate” 72 times. I know I often put code in ValidateRecord and “?Ok” embeds.

One reason I made this it I would this could be repurposed to perform other processing on the Configuration folders.

If you have any questions please post them here. If you have any interesting screen captures of big numbers please post.


What is the Maximum Find Count you have seen? For me it was a Clarion 10 with 8927 and 127,000 bytes

  • 0 - 2500
  • 2501 - 5000
  • 5001 - 7500
  • 7501 - 10,000
  • Over 10,000

0 voters

1 Like

HI Carl,
Thanks a lot for the utility.
I forked the repo and made one change. I changed the project to link in LIB mode so it doesn’t have any DLL requirements. I find that better for standalone utilities. I create a pull request back to your repo if you want the change.

1 Like

Thanks Rick I made that LIB change. I agree for use its better as 1 EXE and no DLLs. For development I want it as DLL for smaller EXE writes on build. I can just not update the CwProj with that change.

I also fixed a few issues with C10 missing equates. Let me know there are any fixes needed for C9, but might as well build it with newer if you have it.


I did initially try to build in C10, but ended up using C11 because of the equates.
The solution won’t actually load in C9.x because the MS solution version number incremented to 12.0 in Clarion10+.

Can C9 open the CwProj ? I think the SLN just adds an Solution folder with " Included Files".

I’ll push a C9 sln file, if you want. It still gets compile errors because of.

Unknown identifier: SYSTEM - \\dimholt\Dimholt_D\Consulting\UpperParkSolutions\Projects\CarlBarnes\FindCleanCwIDE\FindCleanCwIDE.clw:269,5
Unknown identifier: PROP:MSGMODEDEFAULT - \\dimholt\Dimholt_D\Consulting\UpperParkSolutions\Projects\CarlBarnes\FindCleanCwIDE\FindCleanCwIDE.clw:269,12
Unknown identifier: COLOR:GRADIENTINACTIVECAPTION - \\dimholt\Dimholt_D\Consulting\UpperParkSolutions\Projects\CarlBarnes\FindCleanCwIDE\FindCleanCwIDE.clw:732,43
Unknown identifier: COLOR:3DLIGHT - \\dimholt\Dimholt_D\Consulting\UpperParkSolutions\Projects\CarlBarnes\FindCleanCwIDE\FindCleanCwIDE.clw:1215,41
1 Like

I fixed those about an hour ago if you want to update from my repo.
The colors work back to Cw2 as hex 8000000Xh because they were added in NT4.
Thanks! Got the C9 SLN.

I like the 3DLight color for List Header to make it a bit different than the window. I have not tried it on dark themes.

ListFEQ{PROPLIST:DefHdrBackColor} = COLOR:3DLight  

I added an Icon and a few alternatives to replace the simple blue Clarion triangle.

On the Right-Click menu I made it easy to view the .b4clean backup files and IDE Xml.Old file. After shrinking you can get your counts to post to the survey here.

Very nice Carl!!

Best regards

comp.lang.clarion (comp.lang.clarion)
Subject: Re: FindCleanCwIDE Utility to fix: Opening FIND Dialog is Slowww in
On Sat, Feb 13 2021 6:54 am, Alberto Michelis [email protected] said:
Is there an exe file for download just to use it?

No EXE, you have to build it with Clarion.

If you are not familiar with GitHub the download is done this way:

There’s a large Green “Code” button off to the right.
Click on that, then in the drop down menu select the last item “Download Zip”
Place that in a project folder named FIndCleanCwIDE
Unzip and open the FindClean CwProj in Clarion, then Build to make the EXE


This post is a Wiki anyone can update with info about GitHub.

1 Like

Yes its Size in Bytes. I wanted to see the largest file I had e.g. 100kb.

I revised the order to be "Size & Time T01 & Date D017" because the last 2 are always the same number of digits so should align,

If you read this far you should look at this Utility that cleans AND lets you add your favorites to the end of the list. I expect Favorite Find will eventually be rolled into Find Clean.

I find these legacy Routines often, like ValidateRecord.

1 Like

The April newsletter on reminded me that the Template Registry TRF file will grow to be very large over time. This happens when you Re-Register an existing template the old code is marked deleted but the space is never reused and the TRF file is never shrunk. The only cure is to periodically delete the TRF (or rename it .trf.old) then register all your templates.

My FindCleanCwIDE Utility is something I run to check on the size of the Find Drop list and clean it up. I have a Task Schedule run it every month so I don’t forget.

I added a Tab to show the size of the Template Registry TRF files so I can be aware if its growing large. Double clicking on a line opens that folder so you can rename it.


What on earth is the point of posting details of someone else’s servers on this thread?
It has nothing to do with Carl’s utility or the FIND window.

For someone so obsessed with security you sure play fast and loose with the security of others.

No, I know nothing about the url you’ve posted.
Whether it’s publicly available or not is irrelevant - the point is it has absolutely nothing to do with the topic of the thread.

Richard, none of those servers are mine.
Clearly, I have a workstation named DIMHOLT based on the post Richard quoted. That is in an internal LAN. I don’t reuse computer names, especially for anything facing the public.
I probably shouldn’t have posted that snip with the name. I was working on one system and compiling Carl’s project that was stored on the DIMHOLT system.

I added logging of TRF file sizes each time this is run so you’ll have a history of how big the TRF was in the past. To keep it simple I write it to a CSV file which you can view in Excel or Notepad. You can add your own columns, like Notes.

1 Like

@CarlBarnes I just committed a change the the cwproj/sln. I added a new Configuration called DevDLLMode that is to DLL mode while the others (DEBUG|RELEASE) are set to LIB mode.
Thought that might be helpful for you. Unfortunately, I committed the sln and cwproj in two different commits. My bad on that.