关于图像的灰度转化解决方法

关于图像的灰度转化
各位大虾,请教下   关于灰度处理的问题,我写的算法如下:
for(i=0;i <lHeight;i++)
for(j=0;j <lWidth;j++)
{
a=0.114*lpDIBBits[i*lWidth*3+j*3]+0.587*lpDIBBits[i*lWidth*3+j*3+1]+0.299*lpDIBBits[i*lWidth*3+j*3+2];
                  lpDIBBits[i*lWidth*3+j*3]=(BYTE)a;
lpDIBBits[i*lWidth*3+j*3+1]=(BYTE)a;
lpDIBBits[i*lWidth*3+j*3+2]=(BYTE)a;
}
通过效果可以看到变成了 "灰度颜色 ",但用PS打开变化后的图,显示的仍然事RGB/8的图··我想问下如何彻底变成灰度图啊,请给出代码   谢谢
上面代码中的lpDIBBits为彩色图像的首指针!!

------解决方案--------------------
你这样只是视觉效果上有了灰度的概念,实际上并不是灰度图,而还是真彩色图像,只是他的三个通道的数据一样了而已,灰度图是有个调色板的。