Use a hardware calibration device, such as X-Rite's ColorMunki Display, for accurate monitor calibration. Dangle a sensor in front of your screen, press a few buttons, and you're done. It calibrates and saves a profile that is automatically loaded when you start your computer. If you purchase ColorMunki I suggest you skip the CD and download the latest software from X-Rite.
They also sell a less expensive version called ColorMunki Smile. Features are similar but there are no provisions for ambient light correction, setting white point, specifying a custom gamma, and disabling ADC (Automatic Display Control). I find disabling ADC necessary for accurate calibration.
When calibrating the display choose the Advanced radio button to set luminance and white point. Recommended luminance for CRT monitors is 100 cd/m2 and 120 cd/m2 for LCD monitors. In a rather odd twist, if the display is too bright your prints will be too dark. That's because there is a tendency to reduce brightness when processing images. So if your prints are too dark, you need to lower the luminance level. I work in a darkened environment and have found that 110 cd/m2 appropriate for my LCD monitor.
Recommended white point is D65 or 6500° Kelvin. When you calibrate with ColorMunki it will set your monitor to 6500 if it has a preset for this value and then fine-tune the results.
If you choose Native for the white point then ColorMunki sets your monitor to a user-defined preset in your OSD (on screen display) that includes adjustments for RGB values. It will then assume these colors are correct and generate a color profile to correct the luminance and gamma to the values you have selected. Since you want ColorMunki to adjust the color this is not a recommended option. I've found that adjusting RGB values to 95% of full range, before calibration, gives the best results.
On my system merely examining the RGB values in the OSD for my monitor caused the gamma of the display to shift. To prevent the shift required a power down/power up — simply restarting was not sufficient. In other words, if I had examined these values it was necessary to power down/power up before calibration. To ensure calibration is correct and sticks, power down/up before calibration, then power down/up after calibration.
By default ColorMunki will communicate with your display and automatically adjust contrast and brightness. If you are getting strange results then disable this feature and manually enter the correct values. Open ColorMunki, choose File > Preferences, and disable the ADC. Next time you calibrate you will be prompted to make these adjustments on your monitor. If you disable ADC then ColorMunki will no longer automatically choose a preset on your monitor and you should verify, before calibration, that the one you desire is selected.
For personal use I disable ADC, specify D65, gamma 2.2, and 110 cd/m2 for luminance with my LCD monitor. Disabling ADC lets me manually specify contrast and brightness for more accurate results. I don't use the ambient light correction feature as lighting in my environment is constant.
After calibration verify that monitor gamma is 2.2. Then shut down/turn on (don't simply restart) your computer and verify that monitor gamma is still 2.2. If it changes then, for Windows 7, click on the Windows Start button and run "Color Management". Click on the Advanced Tab (1), and check to see if the Windows Display Calibration checkbox is enabled (2). It's okay if it is grayed-out, but it should be enabled. If not, then click on Change System Defaults (3) and enable it.
If that doesn't work run msconfig and disable Intel's igfxpers.exe application in the Startup tab.