Recap from the mameworld news forum:
I previously never created different profiler "folders" for profiles. Always left it on [PROFILES]. I had 2 profiles, pointing to the same MameUI64.exe (mame 0.229) file. One profile was created without importing sofwarelists, and the other without. This was with clrmame 4.0.40.
I grabbed clrmamepro 64bit 4.041 (zip) (6022kb), and extracted it over my clrmame folder, overwriting all files as usual. Also as usual, when opening, it noted the new version and that chache files were removed. While running the listxml, it got most of the way through until it finally stated "An error occured while reading information from: G\Mameui64\MAMEUI64.exe You either stopped the loading process or the file is corrupt". (problem 1)
I then deleted the entire clrmame directory, and extracted it again. Pointed it to the same path\file, and created the first profile (without importing softwarelists). Worked fine. I closed that, then created a new profile again, hoping to import softwarelists to this new profile. It seemed to just skip over the listxml bit. The new-named profile was created instantly, and double-clicking it opened up what I'm guessing was the original profile's cache (the one I had just made without importing softwarelists). (problem 2)
I closed that, then created a new folder when creating a new profile, instead of using the default [PROFILES]. This operated normally, taking care of problem 2.
My 3rd problem isn't really a problem, but more my desire to be as lazy as possible. If I add my Software folder to the roms path, the AutoAssign seems like it is actually recursively checking all subfolders like I would hope it would. BUT... will not assign any path unless that path is explicitly assigned in the ROM-Paths, under settings. In my case, it will assign all softwarelist things to \Software. The fact that arcade games have both a .zip file AND a folder for the .chd file(s), probably makes the logic troublesome, but is there any way possible that the autoAssign can at least ask you if you want to add a detected path (like... all dc images are located in \Software\dc... "should \Software\dc be added to ROM-Paths?")? Perhaps apply that bit of logic only to softwarelist sets to help avoid confusion?