I think the best way it can be is like this:
2 years before release: building fanbase, discussions, concerns, pro+contra, encoourage the forums, at this stage you can propably change things and change the direction if necessary.
1 year before release/open/closed beta: giving more and more information to the growing player base, screenshots, videos, dev blogs, make it interessting
6 months before release: give the players more than information e.g. stand alone character creator, stand alone object creator, announce pre order possibility and bonus, announce early access possibility and so on, just start the hype
1 week before release: HYPE it! Release trailer, growing fanbase, gain people, advertising, make it resounding throughout the world