How do You Catch Jirachi?

In the Pokemon games, a Jirachi cannot be bred, but must be acquired from a special event such as a Pokemon Convention Bonus Disk or on the Pokemon Channel. The version of Pokemon being used would determine how to get a Jirachi for that version.