รีเฟรชเมื่อ 2019/11/09
นี่เป็นโปรเจ็กต์เก่า... ฉันรู้จักกับ VB6 เมื่อตอนที่ฉันอยู่ชั้นประถมศึกษา และเขียนโปรแกรมหลายโปรแกรมติดต่อกัน ในช่วงปิดเทอมฤดูร้อนเมื่อฉันเข้าโรงเรียนมัธยมต้น ดูเหมือนว่าฉันจะเริ่มโปรเจ็กต์นี้ด้วยแนวคิดที่ว่า "ฉันจะไปเรียนภาษาใหม่และในที่สุดก็เขียนปลั๊กอินสำหรับ VB6 โดยใช้ VB เป็นการอำลา" ( ดูเหมือนว่าตอนนี้ฉันอยู่มัธยมต้นแล้ว ฮ่าๆ) อย่างไรก็ตาม นี่ไม่ใช่ "งานอำลา" ที่ฉันคาดหวังไว้ แต่ได้ติดตามฉันมาตลอดสามปีของโรงเรียนมัธยมต้น จาก "ปลั๊กอินขนาดเล็ก" แรกเริ่มก็ค่อยๆ ขยายเป็นโปรเจ็กต์ใหญ่จนถึงตอนนี้ อาจจะเป็นโปรเจ็กต์ที่ใหญ่ที่สุดที่ฉันเคยเขียนมาก็ได้นะ (หัวเราะ)
Microsoft Visual Basic 6.0 ซึ่งเป็น IDE/ภาษาที่เก่ากว่าฉัน ตอนที่ฉันเขียนโปรแกรมนี้ VB6 เริ่มจางหายไปจากสายตาผู้คน และตอนนี้อาจมีอยู่ในหน่วยความจำเท่านั้น ตอนที่ฉันอยู่ชั้นมัธยมปลาย ฉันตระหนักว่าฉันจะไม่ดูแลโปรเจ็กต์นี้อีกต่อไป ฉันจึงใช้เวลาในการปรับปรุงเอกสารประกอบและเผยแพร่โปรแกรมและซอร์สโค้ดบน Baidu Tieba VB Bar เนื่องจากมีผู้ใช้ VB เพียงไม่กี่ราย จึงไม่ได้รับความสนใจมากนัก และฉันก็ทราบเรื่องนี้ดี
เมื่อมองย้อนกลับไป ฉันได้เรียนรู้มากมายจากโครงการนี้ แม้ว่าฉันจะค้นคว้าด้วยตัวเอง หลายปีที่ผ่านมา แม้จะไม่ใช่การศึกษาอย่างเป็นระบบ แต่ฉันก็ยังได้เรียนรู้ความรู้มากมาย เช่น
ตอนนี้โปรแกรมนี้ได้หยุดการบำรุงรักษาแล้ว และฉันจะไม่ให้การสนับสนุนทางเทคนิค (ฉันเกือบลืมไปแล้ว ฮ่าๆ) โปรแกรมมีข้อบกพร่องมากมาย และรูปแบบการเขียนโค้ดไม่ดี เมื่อพิจารณาว่าแทบไม่มีใครใช้ VB6 ในตอนนี้ Addin นี้ไม่มีคุณค่าในทางปฏิบัติ แต่หากประเด็นทางเทคนิคบางประการในนั้นสามารถให้ข้อมูลอ้างอิงแก่คุณได้ ก็ถือว่าได้ใช้คุณค่าของมันแล้ว :)
Develop/iCode 开发者指南.docx
เป็นเอกสารที่ฉันเขียนเมื่อปล่อยซอร์สโค้ด เนื้อหาบางส่วนได้รับการจัดระเบียบดังนี้
โปรแกรม Add-in VB6 (Addin) เป็นปลั๊กอินที่ใช้อินเทอร์เฟซที่ VB จัดทำขึ้นเพื่อปรับปรุง IDE เพื่อใช้ฟังก์ชันเฉพาะ เนื้อหาหลักของโปรเจ็กต์คือ ActiveX DLL ซึ่งเรียกส่วนประกอบเฉพาะ (Microsoft Add-In Designer ฯลฯ) ส่วนประกอบเหล่านี้จะมีอินเทอร์เฟซที่จำกัดสำหรับการควบคุมพฤติกรรมของ IDE Hook การปรับเปลี่ยนหน่วยความจำ ฯลฯ ก็ใช้ในโครงการนี้เช่นกัน สำหรับภาพรวมของอินเทอร์เฟซและกระบวนการ โปรดดูเอกสาร docx
เครื่องมือเพิ่มประสิทธิภาพการคอมไพล์ แทนที่ไอคอนไฟล์ EXE โดยอัตโนมัติและรองรับไอคอนความละเอียดสูง แทรกไฟล์ Manifest โดยอัตโนมัติเพื่อรับฟังก์ชันต่างๆ เช่น การใช้สิทธิ์ UAC และการควบคุมสากลตามธีมของระบบโดยอัตโนมัติ
เพิ่มแถบแท็บลงในพื้นที่ทำงานของ IDE เพื่ออำนวยความสะดวกในการสลับระหว่างหน้าต่าง
รวบรวมเมธอด WIN32 API และ GDI+ ค่าคงที่ ประเภท และแทรกการประกาศโดยอัตโนมัติ
เครื่องมือจัดระเบียบการเยื้องโค้ดที่ได้รับการปรับปรุงพร้อมการวิเคราะห์ข้อผิดพลาดของโค้ดอย่างง่าย
เครื่องมือสถิติโค้ดโดยละเอียดและครอบคลุม
การจับคู่สี IDE สามารถปรับแต่งได้โดยการปรับเปลี่ยนหน่วยความจำ ทำลายการจับคู่สีที่ซ้ำซากจำเจของ VB และมาพร้อมกับฟังก์ชันการนำเข้าและส่งออกโปรแกรม
ปรับปรุงประสิทธิภาพ
รีเลย์การควบคุมหน้าต่างไฟล์
สถาปัตยกรรมของ iCode ได้รับการแก้ไขหลายครั้ง ขณะนี้ แต่ละโปรเจ็กต์คอมโพเนนต์เป็นอิสระ และตัวเรียกใช้งาน (รวมถึง Connect) ไม่ขึ้นอยู่กับโปรเจ็กต์อื่น ตัวเรียกใช้งาน (เรียกว่า A) อ้างอิงถึงโปรเจ็กต์คอมโพเนนต์ (เรียกว่า B) โมดูลคลาส อินเทอร์เฟซใช้ฟังก์ชัน รหัสหลักเขียนด้วยภาษา B โดยส่วนใหญ่จะให้อินสแตนซ์ IDE และข้อมูล Hook
ข้อดีของสิ่งนี้คืออำนวยความสะดวกในการปลูกถ่าย iCode ประกอบด้วยองค์ประกอบหลายอย่าง หากเขียนทั้งหมดไว้ในโปรเจ็กต์เดียว จะทำให้เกิดความสับสนและไม่สะดวกในการดีบั๊ก คุณรู้ไหมว่าเนื่องจากการใช้ Hooks เป็นต้น iCode มักจะต้องได้รับการคอมไพล์และทดสอบแล้ว การคอมไพล์ส่วนประกอบอื่น ๆ ที่ไม่จำเป็นจะทำให้เสียเวลามาก เมื่อใช้สถาปัตยกรรมนี้ ให้เขียนโปรเจ็กต์ส่วนประกอบ + โปรเจ็กต์ตัวเรียกใช้งาน หลังจากการทดสอบเสร็จสิ้น ตัวเรียกใช้งานจริงของ iCode จะอ้างอิงถึงโปรเจ็กต์ส่วนประกอบเพียงเล็กน้อย หากมีปัญหากับส่วนประกอบ ยังสามารถเริ่มต้นผ่านการดีบักดั้งเดิมได้
นอกจากนี้ วิธีการสาธารณะบางวิธี (ส่วนใหญ่ใน iFunction) จะถูกซิงค์โดยใช้ไฟล์โค้ดเดียวกัน
ภาพสุ่ม:
Develop/iCode.chm
AddinDevelop/iCode 开发者指南.docx
มีรายละเอียดเพิ่มเติมในระหว่างการพัฒนาเพื่อใช้อ้างอิง