ต้องออกตัวก่อนว่า ไม่เคยเขียน c++ ใน symbian แต่พอดู code แล้วพอจะตอบให้ได้บ้างละกัน
Code:
iThread.Create(strThreadName,RunThreadEntryPoint,0x2000,0,0,NULL,EOwnerThread);
ใส่แบบนี้ถูกแล้วครับ แต่ที่ผิดคือ
Code:
TInt CExAppUi::RunThreadEntryPoint(TAny* param)
เจ้า RunThreadEntryPoint มันเป็น member function ครับ ไม่สามารถรู้ address ได้ตอน compile เพราะจะถูกสร้างตอน new class เท่านั้น ดังนั้น มันก็ต้อง error เป็นธรรมดาประมาณนี้
Code:
iThread.Create(strThreadName, ไม่รู้ตำแหน่ง,0x2000,0,0,NULL,EOwnerThread); <<< มันก็ compile ไม่ผ่าน แหงแซะ
จากปัญหานี้ มีวิธีแก้ 2 solution (ถ้าคุณโทรมาตอนนี้ เราจะมอบสิทธิพิเศษให้คุณสำหรับ solution ที่ 3 -*- เฮ้ย ไม่ใช่โฆษณา)
1. RunThreadEntryPoint ให้เขียนเป็น function ธรรมดา ไม่ใช่ member function
2. เขียนเป็น member function ก็ได้ แต่ต้องทำเป็น static member function
ผมเองก็บอกได้เท่านี้แหละ เพราะข้อมูลมีให้ผมแค่นี้ ถ้าจะให้ไล่จริงๆ ต้องเอา code ทั้งหมดมา หุหุ (หยุด อย่าขมิบ ส่งโค้ดมาให้หมด)