Well you follow the same procedure regardless of the Pokemon. Basically, the absolute minimum thing you must do is change the ID number for your pokemon, in either the party.dat file or the box.dat file, depending on where the pokemon currently is. Most people edit the party.dat file.
Heres what you've gotta do:
Go to /pokemon/save/<name> and open the party.dat file in, for example, notesblok or notepad. You should now see something like this:

The first code line represents the first Pokemon in your party, whereas the last represents the last Pokemon.
Find the code of line for Haunter (assuming you have a Haunter) and change the number displayed after "Pokemon". This number is the Pokemons national dex number, for example, haunter is number 93, so Gengar would be 94.
At the absolute minimum, this is required. You can basically change anything regarding the pokemon here, including its nature, stats and so on. Once you've made the changes, save the file and start your game. If you did everything correctly, you now have a Gengar
If you don't have a Haunter and just want a Gengar, Just copy one of the code lines and do the neccesary changes. You'll need to change pretty much everything to match Gengar though. Also, in this case, make sure you only have 5 Pokemon in your party when you do this. If you already have 6 and add gengar as the 7th, things could go bad XD.