_WinAPI_FindExecutable is a useful function. However, if the file doesn't exist then you can't use it. Of course, you can go and read the registry a few times to get the information that you need but there's already a function available in the Shell API that lets you do this; it's called AssocQueryString. Here's an example of how to use it. Global Const $ASSOCF_INIT_NOREMAPCLSID = 0x00000001 Global Const $ASSOCF_INIT_BYEXENAME = 0x00000002 Global Const $ASSOCF_OPEN_BYEXENAME = 0x00000002 Glo