Este es una version un poco pobre pero sirve para darte una idea:
Código:
void ToBin(DWORD Decimal)
{
DWORD Temp = Decimal;
char *Binario = (char*)malloc(512);
char *XPos = Binario;
do
{
Temp /= 2;
XPos[0] = Temp % 2 + 48;
XPos++;
}while (Temp > 1);
strrev(Binario);
if ((Decimal % 2) == 0) { XPos[0] = 48; }
else { XPos[0] = 49; }
MessageBox(0, Binario, Binario, 0);
}