Thomas, thanks for the suggestion. However, the .Exec method seems to be a better choice, since (at least in my system) the .Run method doesn't seem to be able to deal with paths that contain spaces. The .Exec funtion works as long as I dereference any shortcuts that are dropped. This is not bad since .CreateShortcut and then .TargetPath will give what I need.