การทำตัวติดตั้ง (Build Installer)
เมื่อโปรเจ็กต์ของเรานิ่งแล้ว การจะให้ลูกค้าหรือเพื่อนร่วมงาน ก๊อปปี้ไฟล์เอาไปวางในโฟลเดอร์รันยาวๆ ของ %ProgramData% ทีละไฟล์ๆ คงรบกวนเวลาทุกคนในออฟฟิศน่าดู
สิ่งที่นักพัฒนามืออาชีพทำคือสร้าง Installer เพื่อกดคลิกเดียวจบบริบูรณ์
สำหรับ Revit เครื่องมือจัดทำ Setup ที่ได้รับความนิยมมีอยู่ 2 ตัวหลัก:
- Inno Setup (ได้ไฟล์
.exe) - WiX Toolset (ได้ไฟล์
.msi)
ในบทนี้เราจะมาสรุปแนวทางด้วย Inno Setup ซึ่งทำได้ง่ายและเห็นผลลัพธ์ไวมากสำหรับมือใหม่ครับ
Inno Setup (.exe)
Section titled “Inno Setup (.exe)”Inno Setup เป็นโปรแกรมฟรีคลาสสิกของโลก Windows. คุณแค่สร้างสคริปต์สั้นๆ .iss จากนั้นโปรแกรมจะจับยัดไฟล์ของคุณบีบอัดลงไฟล์ติดตั้งตัวเดียวให้เลย
ตัวอย่าง Inno Setup Script
Section titled “ตัวอย่าง Inno Setup Script”- โหลดและลง Inno Setup ในเครื่อง
- เปิดขึ้นมา กด New Script และคัดลอกโค้ดนี้ลงไป (โดยคุณต้องเปลี่ยนเส้นทางและชื่อไฟล์ให้ตรงกับเครื่องของคุณด้วย)
[Setup]; ตั้งชื่อโปรแกรมและเวอร์ชันที่จะไปโผล่ในหน้า "Add/Remove Programs" ของ WindowsAppName=RevitToolkit 2026AppVersion=1.0.0AppPublisher=Premix Company; สิ่งสำคัญคือเราตั้งให้ลงไฟล์กระจายไปที่ C:\ProgramData ของ RevitDefaultDirName={commonappdata}\Autodesk\Revit\Addins\2026DisableDirPage=yesOutputBaseFilename=RevitToolkit_v1.0.0_Setup
[Files]; ยัดไฟล์ ManifestSource: "D:\code\Visual Studio\Revit\RevitToolkit\RevitToolkit.addin"; DestDir: "{app}"; Flags: ignoreversion; ยัดไฟล์ DLL ยัดลงโฟลเดอร์ซับ RevitToolkit (ถ้าเป็น Revit 2027 โฟลเดอร์ Release จะเป็น net10.0-windows)Source: "D:\code\Visual Studio\Revit\RevitToolkit\bin\Release\net8.0-windows\RevitToolkit.dll"; DestDir: "{app}\RevitToolkit"; Flags: ignoreversion- กดเมนู Build > Compile
- หากทุกอย่างถูกต้อง มันจะยัดไฟล์ทั้ง 2 ออกมาเป็น
RevitToolkit_v1.0.0_Setup.exe
ทีนี้คุณก็ก๊อปปี้เฉพาะไฟล์ .exe แจกจ่ายให้คนทั้งออฟฟิศคลิกติดตั้งได้เลยครับ ทุกอย่างจะเข้าไปอยู่ใน C:\ProgramData\Autodesk\Revit\Addins\2026 โดยอัตโนมัติ
WiX Toolset (.msi)
Section titled “WiX Toolset (.msi)”(เนื้อหาสำหรับ Advanced User)
WiX Toolset (.msi) เป็นมาตรฐานการติดตั้งของระบบองค์กร Microsoft (Windows Installer XML) ข้อดีคือ
- หากลูกค้าไม่ชอบใจ เขาสามารถลบผ่าน Group Policy แบบเงียบๆ ออกได้
- เหมาะกับการลงผ่านเน็ตเวิร์ค
- โค้ดที่สร้าง installer เขียนเป็นไฟล์
.wxs(โครงสร้าง XML)
อย่างไรก็ตาม WiX Toolset ค่อนข้างเรียนรู้ได้ยากกว่า Inno Setup มาก ต้องอาศัยความเข้าใจระบบ Registry เป็นอย่างดี