Loving the new "user defined icon" possibilities for inputselect() and finally it makes sense to use XY for launching apps...

So, here is v0.9 of "App laucher"...

On it's first start it will write an .ini file with the same base name of the script into the same folder.
It contains a few sample entries to see how it works. Uncomment them if you want them and read
the annotations in this .ini file (or in the script)!

Hi highend, nice script. I didn't have much time to test (cruising the Baltic Sea), but I did make up a couple of new sections. I don't know what you may have planned for future updates, but it might be nice to not see the "exe" extension displayed for exec files as you have done for lnk files (e.g., Remove_Exe_Extension=1). Also, would it be possible to display the section headers minus the brackets [...] like Tools or possibly as an option to display the section header in lieu of a separator.

One more request or option suggestion, would it be possible to have an option to not show a icon for the section header lines. When you use a section header as a separator, you really don't need to have an icon. Not having an icon for the headers would actually make the header standout in the listings a bit more. I tried leaving Seperator_Icon=blank, but that of course didn't work.

By the way that line, Seperator_Icon=:queue is misspelled. Separator is correct in other places in the script, but it must be consistently incorrect for the icon specification since it works. That same line for Seperator_Icon= doesn't seem to work if you use a path\filename icon in lieu of XY built-in icons (the icon name is displayed with a ? icon).

@klownboy: I haven't tested this script yet, but while testing the new inputselect abilities I have found that any unused internal button names like :whatever, display a blank icon instead of a when an icon resource isn't located, so in theory Seperator_Icon=:blank should work.

Yes, you are right Jupe, that works fine. Thanks. Looking back, I shouldn't have written my post above as "Seperator_Icon=blank" as not working. What I meant was "Seperator_Icon=" I know there's also a blank.ico around that's used on some utilities to hide the shortcut arrow on lnks. I have it on my desktop computer at home. Thanks again.

Too bad the inputselect box couldn't be cleaned up a little by removing the numbering on the left side as an option. In many cases the numbers just aren't necessary in the display.

v0.4
! Fixed a bug regarding the wrong spelling of "separator"
Existing .ini files need a manual replacement of "Seperator_Icon="
with "Separator_Icon="!
! Fixed a regex bug reguarding the building of the "Caption|Data|Icon" stuff
* Changed the default value of "Separator_Icon=" to ":blank" which will lead
to an empty icon

v0.5
+ Added three new settings in the "General" section:
"Ask_For_Args=". Default = 1
"Detect_Args_Via=". Options = "file/name/tag". Default = "file"
"Args_Keyword=". Default = "[cli]"
These default settings allow it to execute command line apps with arguments
If "Detect_Args_Via" is set to "name", the script will look for
"<Args_Keyword>" in the name of the file. If set to "tag", it will query
the XY tag database to see if the file is tagged with "<Args_Keyword>".
Both options do NOT allow to set default arguments!
The last option is "file". If the file ".\<base name of this script_CLI.txt"
exists (UTF-8, no BOM, each entry on it's own line), it will look for a
line with the file name (full path) + a trailing "=". If it is found, the
script will ask for arguments (while you can set default values after the
"="). Lines that begin with a ";" are treated as comments
Examples:
C:\Windows\System32\cmd.exe=/k dir "%USERPROFILE%"
; This would display the arguments '/k dir "C:\Users\<user name>"' in the
input field for the command line arguments
C:\Windows\notepad.exe="""C:\Windows\System32\drivers\etc\hosts"""
; This would display the argument "C:\Windows\System32\drivers\etc\hosts"
A note on these quoting rules: If a parameter which needs double quotes
comes directly after the "=" it needs to be TRIPLE double quoted!
If it comes later (as in the first example) it only needs single double
quotes

One of my scripts helped you out? Please donate viaPaypal or highend (at) web (dot) de

Please improve it by limiting the depth of the recursion. Using the Recursive value in the ini would be sufficient. 1,2,3... = the depth of search. Zero could still mean no recursion. It could make the collecting much faster in cases. I ran it on a folder with a massive file structure, however only the executables of the main folders would have been important to me.

v0.6
+ When "Ctrl + Shift" is hold while using the left mouse button to click the
"OK" button the selected entry is started with admin permissions
* "Recursive=" feature changed. All values larger than 0 mean: Limit
recursion to that depth. The character "u" (for "u"nlimited) can be used
to impose no limit to the recursion depth. "0" (NO recursion) is still the
internal default value unless specified otherwise for a section entry

One of my scripts helped you out? Please donate viaPaypal or highend (at) web (dot) de

v0.7
* "Recursive=" feature changed (again)! All values larger than 0 mean: Limit
recursion to that scan depth (note: this was NOT changed). From now on, "0"
will NOT turn off recursion (as in <= 0.6) but set recursion to on with NO
limit to the recursion depth. -1 is now the internal default (if not
defined in a section) and acts as the "NO recursion" switch. Changes to the
.ini file should be handled automatically once you upgrade to v0.7...

One of my scripts helped you out? Please donate viaPaypal or highend (at) web (dot) de