Until I found this site, I used to use AMenu. The problem is this abandonware's company is gone and left it with some limitations:
1) No menu can have over 10, well - 8, buttons (because 2 are reserved).
2) No submenus (but I fixed that by having many copies around and linking them via buttons).
3) No drag and drop, but the INF (a-la PStart's XML) file is very friendly in Notepad and besides, it's 8 buttoms at a time at most anyway.
4) Supporting parameters is about the only advanced feature. Not even a "working folder". Everything is ran from the AMenu's folder. I fixed this by creating a middleman VBS file (AMenu calls it and uses the actual program as a parameter), which not only handles "working folders" but has many features like supporting enviroment variables (a-la %programfiles%), minimizing/maximizing the launched programs, etc. (based on the parameters delivered to it).
The highlight though is that - if needed - it stays hidden in the background and deletes leftovers when the programs are stopped (good for artificially making a program registry free).
At this point you're probably asking how come I use this as an extender and not as the launcher itself. Well, because VBScript can only ask yes/no/cancel (at most) questions or input boxes and not presenting menus...
Anyway, AMenu does beat PStart hands down in 3 areas:
1) It has an individual "close/don't close the menu after launching a program".
Update: fixed in v2.07.
2) It doesn't waste resources / track you down! Did you know you can't launch PStart without it saving the XML file?! And all for what? So it can save how many times you've ran each program/Pstart itself. What for?! This is a major turn off for me!
3) The menus are small and 2D (even in "big icons" mode)! AMenu is so big, 3D and nice to read. When you have a lot of menus and you use them a lot, it's really important - to me, at least.
And even though it has more advanced features like "working folder", it only has very partial support for enivormental variables (until v2.1.0 it had no support at all) so I still have to use my middleman launcher to support those variables and to delete leftovers.
Overall, I'm still looking for the overall solution package. Those two are the best I've found. Like I said, if could do menus in VBScripts, I would have already had that perfect package (well, not perfect because I don't know how to use the tray - but I don't want a background program anyway).
Well, this whole post was just me thinking aloud, I guess.
So what do you think - especially about PStart's limitations?