Thank you, this seems to work. I don't know why I didn't think of "start" before. I had played around with cmd.exe and launching it using different tags..
At the same time, open was not actually waiting for the process. After the first open call, my program was still functional etc, it was not until after the second open call (to the same FH) that the program would hang.
For example, using the code above, I was able to make it work using a horrible kludge, simply call the FH the $link.
so..
open ($link,"|pathtoie $link") || die "Could not launch $!";
I'm curious though, why this works. I was able to open 2 instances of IE using the same $link for the filehandle. Yet, I was unable to do it using just "IE" for the filehandle name.