The OP says "My code works gr8 as .pl but after it's converted to .exe with the pp module, it gets a strange encoded (I think) text." Notice that the script works when evoked by the perl interpreter. The suspect is the pp utility. I packed the demo script that OP posted to an exectuable using the PP utility like the OP did and I ran the executable to see if the problem is reproducible on my system. Isn't this the first step to solving the problem?