what does “error : a nonstatic member reference must be relative to a specific object” mean?
EncodeAndSend is not a static function, which means it can be called on an instance of the class CPMSifDlg. You cannot write this: CPMSifDlg::EncodeAndSend(/*…*/); //wrong – EncodeAndSend is not static It should rather be called as: CPMSifDlg dlg; //create instance, assuming it has default constructor! dlg.EncodeAndSend(/*…*/); //correct