I'm not convinced you are.

should have different window handle values. SendMessage should be the combo handle and ComboBox_SetText should be the edit handle (assuming that as you state ComboBox_SetText is equivalent to SetWindowText). It might be useful to post the code for ComboBox_SetText. Also you are not checking the return values of ComboBox_SetText to see if an error occured.
hello 2kaud

Lets say this SendMessage is working in CBN_SELCHANGE according to you(I have tried from my side its not working), but after this CBN_SELCHANGE returns, the value in edit box will be set as current selection.
How should i stop it to set it current selection from list box(I know its normal behaviour of combo box but thats not working in my case).