ปรากฏในระหว่างการรวบรวม:
MSXML3.DLL ข้อผิดพลาด '800C0005'
ไม่พบทรัพยากรที่ระบุในระบบ
/admin/item/admin_itemfunction.asp, บรรทัด 166
ฉันตรวจสอบข้อมูล:
เมื่อเขียนโปรแกรมโดยใช้องค์ประกอบ XMLHTTT คุณจะพบ "MSXML3.DLL ERROR '800C0005' ระบบไม่พบทรัพยากรที่ระบุ" มีคำอธิบายมากมายสำหรับสาเหตุของข้อผิดพลาดนี้บนอินเทอร์เน็ต โดยทั่วไปแล้วมันเกิดจากการอนุญาตให้ใช้ไฟร์วอลล์หรือพอร์ตของสถานี UDP และยังมีการกล่าวถึงวิธีการแก้ปัญหาที่สอดคล้องกัน บางครั้งอาจไม่ใช่กรณี ในความเป็นจริงคำอธิบายที่ไม่ถูกต้องระบุเหตุผลหลัก "ระบบไม่พบทรัพยากรที่ระบุ" ข้อผิดพลาดนี้เกิดขึ้นเมื่อมีการเรียกวิธีการเปิดขององค์ประกอบ XMLHTTT แล้วใช้วิธีการส่ง เมื่อพารามิเตอร์ URL ของวิธีการเปิดไม่สามารถเข้าถึงได้ข้อผิดพลาดของ 8000005 จะเกิดขึ้น และเมื่อเกิดข้อผิดพลาดนี้แอปพลิเคชันจะสิ้นสุดลงและการดำเนินการจะไม่สามารถดำเนินการต่อได้ โปรแกรมส่วนใหญ่เขียนเช่นนี้:
FunctionFunctionName (Pararm ... )
dimhttp
sethttp = server.createObject ("msxml2.xmlhttp.4.0")
withhttp
.Open "get", httpurl, false
.ส่ง
จบลงด้วย
ifhttp.readystate <> 4 จากนั้น
sethttp = ไม่มีอะไร
-
exitfunction
endif
endfunction
โปรแกรมส่วนใหญ่ใช้แอตทริบิวต์ ReadyState ของ XMLHTTP เพื่อกำหนดสถานะการส่งคืนจากเซิร์ฟเวอร์ ในความเป็นจริงสิ่งนี้อาจไม่เหมาะสม หลายครั้งที่การใช้แอตทริบิวต์ ReadyState เพื่อตัดสินไม่สามารถตรวจจับข้อผิดพลาดในการไหลของโปรแกรมได้อย่างแท้จริง เมื่อพบข้อผิดพลาดโปรแกรมจะยังคงถูกยกเลิก ในความเป็นจริงการปรับเปลี่ยนรหัสข้างต้นสามารถข้ามข้อผิดพลาดที่พบได้อย่างสมบูรณ์ระหว่างการดำเนินการของโปรแกรมและทำให้โปรแกรมทำงานอยู่ แก้ไขรหัสดังนี้:
FunctionFunctionName (Pararm ... )
dimhttp
sethttp = server.createObject ("msxml2.xmlhttp.4.0")
withhttp
.Open "get", httpurl, false
.ส่ง
จบลงด้วย
onerrorresumenext
ifhttp.status <> 200 จากนั้น
sethttp = ไม่มีอะไร
-
exitfunction
endif
endfunction
เมื่อเมธอดส่งสร้างข้อผิดพลาดค่า ReadyState อาจเป็น 4 แต่ค่าการส่งคืนของสถานะจะต้องไม่เป็น 200 ฮ่าฮ่าฉันได้ติดตาม ReadeState และสถานะหลายครั้งเพื่อให้ได้ผลลัพธ์ก่อนหน้านี้ อาจมีข้อผิดพลาดและฉันยังไม่ได้สังเกต
ฉันหวังว่าโซลูชันโปรแกรมข้างต้นจะช่วยคุณได้ !! หากคุณมีทางออกที่ดีกว่าสำหรับเพื่อนของคุณโปรดบอกฉัน
ฉันเป็นโปรแกรมที่ใช้ msxml2.xmlhttp.4.0 เป็นตัวอย่างและยังเหมาะสำหรับส่วนประกอบ XMLHTTP รุ่นอื่น ๆ ในการตรวจสอบส่วนประกอบ XMLHTTP เวอร์ชันใดที่ติดตั้งในระบบของคุณโปรดไปที่ HKEY_CLASSES_ROOT ในรีจิสทรีเพื่อค้นหา
จากข้อมูลข้างต้นฉันได้ทำการแก้ไขต่อไปนี้เพื่อรวบรวมตามปกติโดยไม่มีการดำเนินการใด ๆ เช่นการติดตั้งส่วนประกอบการรีสตาร์ทปิดไฟร์วอลล์ ฯลฯ :
/admin/item/admin_itemfunction.asp, ใกล้บรรทัด 166:
http.send ()
ifhttp.readystate <> 4 จากนั้น