bbfu was correct. It seems when you call the program list version of system(), it works fine, but it is unhappy with just a single string. My guess is that it is stripping the quotes for some reason (as opposed to adding a second set around the whole string), based on playing around with adding and removing quotes in the string to no effect.