ข้ามไปที่เนื้อหาหลัก
การสนับสนุน
ลงชื่อเข้าใช้
ลงชื่อเข้าใช้ด้วย Microsoft
ลงชื่อเข้าใช้หรือสร้างบัญชี
สวัสดี
เลือกบัญชีอื่น
คุณมีหลายบัญชี
เลือกบัญชีที่คุณต้องการลงชื่อเข้าใช้

สรุป

เมื่อคุณใช้ตัวดำเนินการใหม่หรือCreateObjectฟังก์ชันใน Microsoft Visual Basic เมื่อต้องการสร้างอินสแตนซ์ของโปรแกรมประยุกต์ Microsoft Office คุณอาจได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้:

ข้อผิดพลาดรันไทม์ '429': คอมโพเนนต์ ActiveX ไม่สามารถสร้างออบเจ็กต์

ข้อผิดพลาดนี้เกิดขึ้นเมื่อคอมโพเนนต์วัตถุแบบจำลอง (COM) ไม่สามารถสร้างวัตถุAutomationร้องขอ และวัตถุAutomationเป็น ดังนั้น จึงไม่พร้อมใช้งาน Visual Basic ข้อผิดพลาดนี้เกิดขึ้นในคอมพิวเตอร์ทั้งหมด บทความนี้อธิบายถึงวิธีการวินิจฉัย และแก้ไขปัญหาทั่วไปที่อาจทำให้เกิดข้อผิดพลาดนี้

ข้อมูลเพิ่มเติม

ใน Visual Basic มีอยู่หลายสาเหตุของข้อผิดพลาด 429 ข้อผิดพลาดเกิดขึ้นหากมีเงื่อนไขใด ๆ ต่อไปนี้เป็นจริง:

  • ไม่มีข้อผิดพลาดในแอพลิเคชัน

  • ไม่มีข้อผิดพลาดในการกำหนดค่าระบบ

  • ไม่มีคอมโพเนนต์ขาดหายไป

  • ไม่มีคอมโพเนนต์เสียหาย

เมื่อต้องการค้นหาสาเหตุของข้อผิดพลาด ระบุปัญหา ถ้าคุณได้รับข้อความข้อผิดพลาด "429" บนคอมพิวเตอร์แบบไคลเอ็นต์ ใช้ข้อมูลต่อไปนี้เพื่อแยก และแก้ไขข้อผิดพลาดในโปรแกรมประยุกต์ Microsoft Office หมายเหตุ ข้อมูลต่อไปนี้บางอย่างยังอาจนำไปใช้กับเซิร์ฟเวอร์ที่ไม่ใช่ Office COM อย่างไรก็ตาม บทความนี้อนุมานว่า คุณต้องการให้โปรแกรมประยุกต์ Office โดยอัตโนมัติ

ตรวจสอบรหัส

ก่อนที่คุณแก้ไขข้อผิดพลาด พยายามแยกบรรทัดเดียวของรหัสที่อาจเป็นสาเหตุของปัญหา ถ้าคุณพบว่า บรรทัดเดียวของรหัสอาจทำให้เกิดปัญหา ดำเนินการขั้นตอนเหล่านี้:

  • ตรวจสอบให้แน่ใจว่า โค้ดที่ใช้สร้างวัตถุอย่างชัดเจน ปัญหาชัดถ้าพวกเขามี narrowed ลงกับการดำเนินการเดียวกัน ตัวอย่างเช่น ค้นหาการสร้างแบบไม่ชัดเจนของวัตถุที่จะใช้เป็นหนึ่งในรายการต่อไปนี้ ตัวอย่างรหัส 1

    Application.Documents.Add 'DON'T USE THIS!!

    ตัวอย่างรหัส 2

    Dim oWordApp As New Word.Application 'DON'T USE THIS!!
    '... some other code
    oWordApp.Documents.Add

    ตัวอย่างของรหัสเหล่านี้ทั้งสองใช้สร้างออบเจ็กต์แบบไม่ชัดเจน Microsoft Office Word 2003 ไม่เริ่มทำงานจนกว่าตัวแปรเรียกว่าอย่างน้อยหนึ่งครั้ง เนื่องจากตัวแปรอาจถูกเรียกในส่วนต่าง ๆ ของโปรแกรม ปัญหาอาจจะยากต่อการค้นหา อาจเป็นเรื่องยากที่จะตรวจสอบว่า ปัญหาที่เกิดขึ้น เมื่อมีสร้างแอพลิเคชันวัตถุ หรือ เมื่อมีสร้างออบเจ็กต์เอกสาร คุณสามารถทำการเรียกอย่างชัดเจนในการสร้างวัตถุแต่ละชิ้นแยกต่างหาก ดัง แทน

    Dim oWordApp As Word.Application
    Dim oDoc As Word.Document
    Set oWordApp = CreateObject("Word.Application")
    '... some other code
    Set oDoc = oWordApp.Documents.Add

    เมื่อคุณทำการเรียกอย่างชัดเจนในการสร้างวัตถุแต่ละชิ้นแยกต่างหาก ปัญหานั้นได้ง่ายขึ้นเมื่อต้องการแยก ซึ่งอาจทำให้รหัสง่ายต่อการอ่าน

  • ใช้ฟังก์ชันCreateObjectแทนที่เป็นตัวดำเนินการใหม่เมื่อคุณสร้างอินสแตนซ์ของโปรแกรมประยุกต์ของ Office ฟังก์ชันCreateObjectแผนผังกระบวนการสร้างที่ใช้ในไคลเอนต์ Visual C++ ของ Microsoft โดยส่วนใหญ่อย่างใกล้ชิด CreateObjectฟังก์ชันนอกจากนี้ยังอนุญาตให้มีการเปลี่ยนแปลงใน CLSID ของเซิร์ฟเวอร์ระหว่างเวอร์ชัน คุณสามารถใช้CreateObjectฟังก์ชัน กับวัตถุแบบผูกล่วงหน้า และวัตถุผูกล่าช้าได้

  • ตรวจสอบว่า สายอักขระ "ProgID" ที่ถูกส่งผ่านไป CreateObjectถูกต้อง แล้ว ตรวจสอบว่า สายอักขระ "ProgID" เป็นเวอร์ชันที่เป็นอิสระต่อกัน ตัวอย่างเช่น ใช้สายอักขระ "Excel.Application" แทนที่จะใช้สายอักขระ "Excel.Application.8" ระบบที่ล้มเหลวอาจมีรุ่นเก่ากว่าของ Microsoft Office หรือ Microsoft Office รุ่นใหม่กว่ารุ่นที่คุณระบุไว้ในสายอักขระ "ProgID"

  • ใช้คำสั่งErlจะรายงานหมายเลขบรรทัดของบรรทัดของรหัสที่ไม่สำเร็จ ซึ่งอาจช่วยให้คุณตรวจแก้จุดบกพร่องโปรแกรมประยุกต์ที่ไม่สามารถเรียกใช้ใน IDE รหัสต่อไปนี้บอกคุณไม่สามารถสร้างวัตถุที่ทำงานอัตโนมัติ(Microsoft Word หรือ Microsoft Office Excel 2003):

    Dim oWord As Word.Application
     Dim oExcel As Excel.Application
     
     On Error Goto err_handler
     
     1: Set oWord = CreateObject("Word.Application")
     2: Set oExcel = CreateObject("Excel.Application")
     
     ' ... some other code
     
     err_handler:
       MsgBox "The code failed at line " & Erl, vbCritical

    ใช้ฟังก์ชันMsgBoxและหมายเลขบรรทัดเพื่อติดตามข้อผิดพลาด

  • ใช้การผูกข้อมูลล่าช้าเป็นดังนี้:

    Dim oWordApp As Object

    วัตถุแบบผูกล่วงหน้าจำเป็นต้องมีอินเทอร์เฟซของตนเองเพื่อให้อินเทอร์เฟซระหว่างขอบเขตของกระบวนการ ถ้าไม่สามารถ marshaled อินเทอร์เฟซแบบกำหนดเองระหว่างCreateObjectหรือในระหว่างการสร้างคุณได้รับข้อความข้อผิดพลาด "429" ล่าช้าผูกกับวัตถุใช้การ IDispatch ระบบกำหนดอินเทอร์เฟซที่จำเป็นต้องใช้พร็อกซีแบบกำหนดเองเพื่อให้อินเทอร์เฟซ นี้ ใช้วัตถุผูกกับล่าช้าในการตรวจสอบว่า ขั้นตอนนี้ทำงานได้อย่างถูกต้อง ถ้าปัญหาเกิดขึ้นเฉพาะเมื่อวัตถุถูกผูกล่วงหน้า ปัญหาอยู่ในแอพลิเคชันของเซิร์ฟเวอร์ โดยทั่วไปแล้ว คุณสามารถติดตั้งแอพลิเคชันตามที่อธิบายไว้ในส่วน "ตรวจสอบว่าเซิร์ฟเวอร์ Automation" ของบทความนี้เพื่อแก้ไขปัญหาอยู่

ตรวจสอบเซิร์ฟเวอร์ automation

สาเหตุทั่ว ๆ ไปสำหรับข้อผิดพลาดจะเกิดขึ้นเมื่อคุณใช้CreateObjectหรือสร้างเป็นปัญหาที่ส่งผลกระทบต่อแอพลิเคชันของเซิร์ฟเวอร์ โดยทั่วไป การกำหนดค่าของแอพลิเคชันหรือการตั้งค่าของแอพลิเคชันทำให้ปัญหา เมื่อต้องการแก้ไขปัญหา ใช้ตามวิธีการ:

  • ตรวจสอบว่า มีการติดตั้งโปรแกรมประยุกต์ Office ที่คุณต้องการโดยอัตโนมัติบนคอมพิวเตอร์เฉพาะที่ ตรวจสอบให้แน่ใจว่า คุณสามารถเรียกใช้แอพลิเคชัน เมื่อต้องการทำเช่นนี้ ให้คลิกเริ่มคลิก เรียกใช้และจากนั้นให้ลองเรียกใช้โปรแกรมประยุกต์ ถ้าคุณไม่สามารถเรียกใช้โปรแกรมประยุกต์ด้วยตนเอง แอพลิเคชันจะไม่ทำงาน โดยอัตโนมัติ

  • การลงทะเบียนแอพลิเคชันดังนี้:

    1. คลิกเริ่มและจากนั้น คลิกเรียกใช้

    2. ในกล่องโต้ตอบการเรียกใช้พิมพ์เส้นทางของเซิร์ฟเวอร์ แล้ว ผนวก/RegServerไปยังจุดสิ้นสุดของบรรทัด

    3. คลิก ตกลง แอพลิเคชันทำงานอยู่เบื้องหลัง แอพลิเคชันจะลงทะเบียนเป็นเซิร์ฟเวอร์ COM อีกครั้ง

    ถ้าปัญหานี้เกิดขึ้นเนื่องจากคีย์รีจิสทรีเสียหาย ขั้นตอนเหล่านี้โดยทั่วไปจะแก้ปัญหา

  • ตรวจสอบหมายเลข LocalServer32 ภายใต้ CLSID สำหรับแอพลิเคชันที่คุณต้องการทำให้เป็นอัตโนมัติ ตรวจสอบให้แน่ใจว่า คีย์ LocalServer32 ที่ชี้ไปยังตำแหน่งที่ถูกต้องสำหรับแอพลิเคชัน ตรวจสอบให้แน่ใจว่า ชื่อเส้นทางมีเส้นทางสั้น (DOS 8.3) รูปแบบที่อยู่ คุณไม่จำเป็นต้องลงทะเบียนกับเซิร์ฟเวอร์ โดยใช้ชื่อเส้นทางที่สั้น อย่างไรก็ตาม ชื่อเส้นทางยาวที่มีช่องว่างฝังตัวอาจทำให้เกิดปัญหาในบางระบบ เมื่อต้องการตรวจสอบคีย์เส้นทางที่ถูกเก็บไว้สำหรับเซิร์ฟเวอร์ เริ่มตัวแก้ไขรีจิสทรี Windows เป็นดังนี้:

    1. คลิกเริ่มและจากนั้น คลิกเรียกใช้

    2. พิมพ์regeditและจากนั้น คลิกตกลง

    3. ย้ายไปยังคีย์ HKEY_CLASSES_ROOT\CLSID Clsid ของเซิร์ฟเวอร์ automation ที่ลงทะเบียนไว้บนระบบอยู่ภายใต้คีย์นี้

    4. ใช้ค่าต่อไปนี้ของคีย์ CLSID เพื่อค้นหาคีย์ที่แสดงถึงแอพลิเคชัน Office ที่คุณต้องการทำให้เป็นอัตโนมัติ ตรวจสอบคีย์ LocalServer32 ของคีย์ CLSID สำหรับเส้นทาง

      เซิร์ฟเวอร์ของ office

      คีย์ CLSID

      Access.Application

      {73A4C9C1-D68D-11D0-98BF-00A0C90DC8D9}

      Excel.Application

      {00024500-0000-0000-C000-000000000046}

      Outlook.Application

      {0006F03A-0000-0000-C000-000000000046}

      PowerPoint.Application

      {91493441-5A91-11CF-8700-00AA0060263B}

      Word.Application

      {000209FF-0000-0000-C000-000000000046}

    5. ตรวจสอบเส้นทางเพื่อให้แน่ใจว่า นั้นตรงกับตำแหน่งที่แท้จริงของแฟ้ม

    หมายเหตุ ชื่อเส้นทางที่สั้นอาจดูเหมือนถูกต้องเมื่อพวกเขาไม่ถูกต้อง ตัวอย่างเช่น Office และ Microsoft Internet Explorer (ถ้าจะถูกติดตั้งในตำแหน่งที่ตั้งเริ่มต้น) ทั้งมีเส้นทางสั้นที่คล้ายกับ C:\PROGRA~1\MICROS~X\ (ที่ Xเป็นตัวเลข) ชื่อนี้อาจไม่ปรากฏขึ้นในตอนเริ่มต้นเพื่อ ให้ชื่อเส้นทางที่สั้น เพื่อกำหนดเส้นทางถูกต้องหรือไม่ ให้ทำตามขั้นตอนเหล่านี้:

    1. คลิกเริ่มและจากนั้น คลิกเรียกใช้

    2. คัดลอกค่าจากรีจิสทรี นั้นแล้ว วางค่าในกล่องโต้ตอบเรียกใช้หมายเหตุ ลบสวิตช์/automationก่อนที่คุณเรียกใช้แอพลิเคชัน

    3. คลิก ตกลง

    4. ตรวจสอบว่า โปรแกรมประยุกต์ทำงานได้อย่างถูกต้อง ถ้าแอพลิเคชันที่เรียกใช้หลังจากที่คุณคลิกตกลงเซิร์ฟเวอร์ถูกลงทะเบียนอย่างถูกต้อง ถ้าแอพลิเคชันไม่ทำงานหลังจากที่คุณคลิกตกลงแทนค่าของคีย์ LocalServer32 มีพาธถูกต้อง ใช้ชื่อเส้นทางที่สั้นถ้าคุณสามารถทำ

  • การทดสอบสำหรับความเสียหายที่เป็นไปได้ ของแม่แบบ Normal.dot หรือทรัพยากรแฟ้ม Excel.xlb ปัญหาอาจเกิดขึ้นเมื่อคุณทำให้เป็นอัตโนมัติ Microsoft Word หรือ Microsoft Excel ถ้าแม่แบบ Normal.dot ใน Word หรือทรัพยากรแฟ้ม Excel.xlb ใน Excel อาจเสียหาย เมื่อต้องการทดสอบแฟ้มเหล่านี้ ค้นหาฮาร์ดดิสก์ภายในเครื่องสำหรับอินสแตนซ์ทั้งหมด ของ Normal.dot หรือ Excel.xlb หมายเหตุ คุณอาจพบหลายสำเนาของแฟ้มเหล่านี้ ไม่มีสำเนาของแต่ละแฟ้มเหล่านี้สำหรับแต่ละโพรไฟล์ผู้ใช้ที่ติดตั้งบนระบบ เปลี่ยนชื่อแฟ้ม Normal.dot หรือแฟ้ม Excel.xlb ชั่วคราว แล้ว เริ่มรันการทดสอบการทำงานอัตโนมัติของคุณ Word และ Excel ทั้งสร้างแฟ้มเหล่านี้จะไม่สามารถค้นหา ตรวจสอบว่า รหัสการทำงาน ถ้ารหัสทำงานเมื่อมีสร้างแฟ้ม Normal.dot ใหม่ ลบแฟ้มต่าง ๆ ที่คุณเปลี่ยนชื่อ แฟ้มเหล่านี้ได้รับความเสียหาย ถ้ารหัสใช้ไม่ได้ คุณต้องแปลงแฟ้มเหล่านี้ไปยังชื่อแฟ้มเดิมเพื่อบันทึกการตั้งค่าแบบกำหนดเองใด ๆ ที่ถูกบันทึกไว้ในแฟ้มเหล่านี้

  • เรียกใช้โปรแกรมประยุกต์ภายใต้บัญชีผู้ดูแล เซิร์ฟเวอร์ office ต้องใช้การเข้าถึงแบบอ่าน/เขียน ไปยังรีจิสทรี และ ไปไดรฟ์ เซิร์ฟเวอร์ office อาจไม่โหลดอย่างถูกต้องถ้าการตั้งค่าความปลอดภัยปัจจุบันของคุณปฏิเสธการเข้าถึงแบบอ่าน/เขียน

ตรวจสอบระบบ

การตั้งค่าคอนฟิกระบบยังอาจทำให้เกิดปัญหาสำหรับเซิร์ฟเวอร์ COM ออกกระบวนการสร้าง การแก้ปัญหา ใช้วิธีการต่อไปนี้บนระบบที่ข้อผิดพลาดเกิดขึ้น:

  • ตรวจสอบว่า ปัญหาเกิดขึ้นกับเซิร์ฟเวอร์ใด ๆ ออกของกระบวนการ ถ้าคุณมีโปรแกรมประยุกต์ที่ใช้ COM เซิร์ฟเวอร์ที่เฉพาะเจาะจง (เช่น Word), ทดสอบเซิร์ฟเวอร์ออกของกระบวนการอื่นเพื่อให้แน่ใจว่า ปัญหาไม่ได้เกิดในชั้น COM เอง ถ้าคุณไม่สามารถสร้างเซิร์ฟเวอร์ COM ที่ออกของกระบวนการบนเครื่องคอมพิวเตอร์ ติดตั้งแฟ้มระบบ OLE ตามที่อธิบายไว้ในส่วน "ติดตั้ง Microsoft Office" ของบทความนี้ หรือติดตั้งระบบปฏิบัติการเพื่อแก้ปัญหา

  • ตรวจสอบหมายเลขรุ่นของแฟ้มระบบ OLE ที่จัดการการดำเนินการอัตโนมัติ โดยทั่วไปจะมีการติดตั้งแฟ้มเหล่านี้เป็นชุด แฟ้มเหล่านี้ต้องตรงกับหมายเลขการสร้าง ยูทิลิตี้การตั้งค่าการกำหนดค่าอย่างไม่ถูกต้องสามารถโดยไม่ได้ตั้งใจติดตั้งแฟ้มแยกต่างหาก ซึ่งทำให้แฟ้มจะไม่ตรงกัน เมื่อต้องการหลีกเลี่ยงปัญหาในการทำงานอัตโนมัติ ตรวจสอบแฟ้มเพื่อให้แน่ใจว่า รุ่นของแฟ้มที่จะถูกจับคู่ แฟ้มระบบอัตโนมัติจะอยู่ในไดเรกทอรี Windows\System32 ตรวจสอบแฟ้มต่อไปนี้

    File name

    เวอร์ชัน

    วันปรับเปลี่ยน

    Asycfilt.dll

    10.0.16299.15

    วันที่ 29 กันยายน 2017

    Ole32.dll

    10.0.16299.371

    29 มีนาคม 2018

    Oleaut32.dll

    10.0.16299.431

    3 พฤษภาคม 2018

    Olepro32.dll

    10.0.16299.15

    วันที่ 29 กันยายน 2017

    Stdole2.tlb

    3.0.5014

    วันที่ 29 กันยายน 2017

    เมื่อต้องการตรวจสอบรุ่นของแฟ้ม คลิกขวาแฟ้มใน Windows Explorer และจากนั้น คลิกคุณสมบัติ หมายเหตุตัวเลขสี่ล่าสุดของรุ่นของแฟ้ม (หมายเลขการสร้าง) และวันที่ปรับเปลี่ยนแฟ้มครั้งล่าสุด ตรวจสอบให้แน่ใจว่า ค่าเหล่านี้จะเหมือนกันสำหรับแฟ้มทั้งหมดที่ทำงานอัตโนมัติ หมายเหตุ แฟ้มต่อไปนี้มีไว้สำหรับ Windows 1709 รุ่น 10, build 16299.431 นั้น วันและตัวเลขเหล่านี้เป็นตัวอย่างเท่านั้น ค่าของคุณอาจแตกต่างกัน

  • ใช้ยูทิลิตี้การตั้งค่าคอนฟิกระบบ (Msconfig.exe) เพื่อเริ่มต้นบริการและระบบการตรวจสอบสำหรับแอพลิเคชันของบุคคลที่สามที่อาจจำกัดการเรียกใช้โค้ดในโปรแกรมประยุกต์ Office สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ Msconfig.exe ดูบทความฐานความรู้ของ Microsoft ต่อไปนี้:

    181966 ยูทิลิตี้การตั้งค่าคอนฟิกระบบการแก้ไขปัญหาการตั้งค่าขั้นสูง ตัวอย่างเช่น โปรแกรมประยุกต์ทำงานอัตโนมัติ Outlook อาจล้มเหลวเนื่องจากคุณกำลังเรียกใช้โปรแกรมป้องกันไวรัสที่มีคุณลักษณะ "ตัวบล็อกสคริปต์" หมายเหตุ ปิดใช้งานโปรแกรมป้องกันไวรัสชั่วคราวเท่านั้นบนระบบทดสอบที่ไม่ได้เชื่อมต่อกับเครือข่าย อีกวิธีหนึ่งคือ ให้ทำตามขั้นตอนเหล่านี้ใน Outlook เมื่อต้องการปิดใช้งาน add-in ของบริษัทอื่น: ถ้าวิธีการนี้ช่วยแก้ปัญหา ติดต่อผู้ขายโปรแกรมป้องกันไวรัสของบริษัทอื่นสำหรับข้อมูลเพิ่มเติมเกี่ยวกับการปรับปรุงโปรแกรมป้องกันไวรัส

    1. บนเมนูแฟ้มคลิกตัวเลือกและจากนั้น คลิกเพิ่มเติม

    2. คลิกจัดการ COM เพิ่มเติมและจากนั้น คลิกไปหมายเหตุ เปิดกล่องโต้ตอบCOM เพิ่มเติม

    3. ยกเลิกเลือกกล่องกาเครื่องหมายสำหรับใด ๆ ของบุคคลที่สาม add-in และจากนั้น คลิกตกลง

    4. เริ่ม Outlook ใหม่

การติดตั้ง Office

ถ้าไม่มีขั้นตอนก่อนหน้านี้แก้ปัญหา เอาออก และจากนั้น ติดตั้ง Office

สำหรับข้อมูลเพิ่มเติม ดู Office ต่อไปนี้บทความ:

ดาวน์โหลด และติดตั้ง หรือติดตั้ง Office 365 หรือ Office 2016 บนพีซีหรือ Mac

อ้างอิง

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการทำงานอัตโนมัติของ Office และตัวอย่างรหัส ไปที่เว็บไซต์ของ Microsoft ต่อไปนี้:

เริ่มต้นใช้งานกับ Office พัฒนา

ต้องการความช่วยเหลือเพิ่มเติมหรือไม่

ต้องการตัวเลือกเพิ่มเติมหรือไม่

สํารวจสิทธิประโยชน์ของการสมัครใช้งาน เรียกดูหลักสูตรการฝึกอบรม เรียนรู้วิธีการรักษาความปลอดภัยอุปกรณ์ของคุณ และอื่นๆ

ชุมชนช่วยให้คุณถามและตอบคําถาม ให้คําติชม และรับฟังจากผู้เชี่ยวชาญที่มีความรู้มากมาย

ข้อมูลนี้เป็นประโยชน์หรือไม่

คุณพึงพอใจกับคุณภาพภาษาเพียงใด
สิ่งที่ส่งผลต่อประสบการณ์ใช้งานของคุณ
เมื่อกดส่ง คำติชมของคุณจะถูกใช้เพื่อปรับปรุงผลิตภัณฑ์และบริการของ Microsoft ผู้ดูแลระบบ IT ของคุณจะสามารถรวบรวมข้อมูลนี้ได้ นโยบายความเป็นส่วนตัว

ขอบคุณสำหรับคำติชมของคุณ!

×