Ah, it may be the case that the LPPHONEMESSAGE structure isn't defined! Add the following: Code: typedef struct phonemessage_tag { DWORD hDevice; DWORD dwMessageID; DWORD_PTR dwCallbackInstance; DWORD_PTR dwParam1; DWORD_PTR dwParam2; DWORD_PTR dwParam3; } PHONEMESSAGE, *LPPHONEMESSAGE; Right below the line that reads Code: } PHONEINITIALIZEEXPARAMS, *LPPHONEINITIALIZEEXPARAMS; That's copied right out of MSDN. Cheers, Jorl17