วันนี้มาถึงที่ทำงานแต่เช้า (จริงๆก็ไม่เช้าเท่าไหร่ แต่เอาเป็นว่ามาถึงก่อนที่อะไรจะสายเกินไป) และแน่นอนว่าพอเปิดเครื่องปุ๊บ ก็ต้องเปิด facebook ก่อน แป่ว ไม่ใช่ๆ เปิด intranet ที่ทำไว้เพื่อดูความสงบเรียบร้อยบางอย่าง และแล้วเรื่องที่ไม่คาดฝัน ก็เกิดขึ้น
This page has encountered a critical error. Contact your system administrator if this problem persists.
น่าน… โดนเข้าแล้ว งานเข้าแต่เช้า ไม่ต้องติดต่อแล้ว admin เพราะตูนี่แหละ admin จัดแจงเปิด Event log ดูก่อน แล้วก็ไปสะดุดตาที่ System Log มี error แบบนี้
The application-specific permission settings do not grant Local Activation permission for the COM Server application with CLSID
{61738644-F196-11D0-9953-00C04FD919C1}
to the user DOMAIN\ServiceAccount SID (S-1-5-21-1776335886-2898880088-2153249584-11406). This security permission can be modified using the Component Services administrative tool.
อืม.. ตอนแรกอ่านไปก็งงๆ ว่า แล้วยังไง ป่อย -_-‘ มืดบอดมาก (อ้อ Log นี้เปิดจากเครื่องที่ลง sharepoint นะครับ เป็น Windows 2003 R2)
จะพึ่งใครได้ นอกจาก อากู๋ Google แล้วก็ไม่ผิดหวัง (วิธีแก้ปัญหาอยู่ ลิงค์ด้านล่าง เป็นภาษาอังกฤษนะคับ รูดเมาส์ผ่านไปได้เลย) ใครไม่ค่อยถูกกับภาษาอังกฤษ ก็ทนอ่านต่อไป
พออ่านๆ ไปแล้วก็เห็นว่าเออ ใน log พูดถึง Administrative tool แต่ด้วยความอ่อนด้อยเพราะไม่ค่อยคุ้นกับ windows server เท่าไหร่ ก็เลย ไม่เคยรู้ว่า มันมี Component Services ด้วย หึหึหึ
ว่าแล้วก็บรรจงเปิดขึ้นมา (ทำไมต้องบรรจง) แล้วก็ก๊อบ CLSID ที่ทำตัวแดงๆ ไว้ แล้วยังไงหละ
กด Windows + R เรียก textbox เทพ ขึ้นมา ส่วนใครไม่เคยใช้มันก็คือ Start -> Run นั่นแหละ แล้วก็ ค่อยๆพิมพ์ “regedit” ลงไปในช่องกด “Ok” ใช่แล้ว ทุกๆอย่างมันควรเก็บไว้ในนี้แหละ แล้วเราก็เอา CLSID ลองค้นๆดู ก็ได้มาว่ามันคือ IIS WAMREG admin Service นั่นเอง
สงสัยเป็นเพราะเมื่อวานล้างรถ บุญเลยส่ง ให้เจอ service ตัวนี้ พอดี (ไม่เห็นจะเกี่ยวตรงไหน T T) ก้อเปิด properties ดู ไล่ทีลแท็บ (อันนี้ถึกได้) แล้วก็ไปเจอ Security เห็นมีช่องนึง บอกว่า “Lauch Activation Permission” แล้วมันเลือกอยู่ที่ custom เรยกด edit เข้าไปดู มาถึงตรงนี้ ยอมรับว่า เดาอะ เพราะเราไม่เห็น DOMAIN\ServiceAccount อยู่ใน list แล้วด้านล่างก็มี Local Activation พอดี เรยจัดการ add DOMAIN\ServiceAccount แล้วก็ ติ๊ก Local Activation ลงไปซะ แล้วก็ไป restart IIS service หนึ่งครับ พร้อม ภาวนา
กลับมา กลับมา กลับมา
แล้วก็ลองเข้าหน้าเว็บ intranet ใหม่ อิอิ มันมาแล้ว สบายใจ
ที่เขียนมาทั้งหมด ถ้าตัดความไร้สาระออกไป จะเหลือแค่ครึ่งเดียว และ เดี๋ยวก่อนวิธีการนี้ไม่ได้คิดเองครับ แต่ไปเจอจากที่นี่ครับ The application-specific permission settings do not grant Local Activation permission for the COM Server application with CLSID – MOSS / SharePoint 2007 Server Issues Revisited
นาย Mike ยังบอกอีกว่า วิธีการนี้ ไม่เพียงแต่ใช้แก้ปัญหาบน sharepoint เท่านั้นนะครับแต่ใช้แก้ปัญหา เวลามี DCOM error ขึ้นอยู่ใน system log ได้ด้วย
ค่อยข้างจะออก ทาง Admin/ IT Pro พอสมควร แต่ถ้าเราชาว Dev รู้ไว้บ้างก็จะดีไม่ใช่น้อย
สวัสดี