This is a known issue for 9.2.04i only. This problem is fixed in 10.1, and not present in earlier 9.2i service packs. The GUI gives the incorrect command to the programmer. If you look in the console, you will see the following:
// *** BATCH CMD : Program -p 1
It should look like this:
// *** BATCH CMD : Program -p 1 -prog -onlyFpga
You can work around this problem by running in batch mode with the correct command, shown above.
If the batch mode workaround is not feasible, you can revert to 9.2.03, which does not have this issue. To do this, you can either remove the Service Pack using the "Uninstall last Update" option. Start -> Programs -> Xilinx ISE 9.2i -> Accessories -> Uninstall last Update, or set up a separate lab install of the programming tools only with Service Pack 3 installed. The lab version of the tools can be installed, which will install only iMPACT instead of the full tool suite.
Here is the link for the Programming Tools: