/*works:*/ unsigned char SysEx[]={0xF0, ..., 0xF7} int DoSomething(int device) { bla=(LPBYTE)&SysEx[0]; } int main(int argc, char **argv) { SendSysEx(1); return(0); } /**************************/ /* doesn't work:*/ unsigned char message[]={0xF0, ..., 0xF7} int DoSomething(int device, unsigned char* SysEx) { bla=(LPBYTE)&SysEx[0]; } int main(int argc, char **argv) { SendSysEx(1, message); return(0); }