Skip to content

ตั้งค่าโปรเจ็กต์

สร้างโปรเจ็กต์

Section titled “สร้างโปรเจ็กต์”

ในการพัฒนาปลั๊กอินด้วย C# และ .NET เราจะสร้างโปรเจ็กต์ประเภท Class Library (ไลบรารีคลาส) เพื่อคอมไพล์โค้ดออกมาเป็นไฟล์ .dll ครับ ให้ทำตามขั้นตอนการสร้างใน Visual Studio 2022 ดังนี้:

🛠️ ขั้นตอนการสร้างโปรเจ็กต์ใน Visual Studio 2022

Section titled “🛠️ ขั้นตอนการสร้างโปรเจ็กต์ใน Visual Studio 2022”
  1. เปิดโปรแกรม Visual Studio 2022:
    • คลิกเลือกที่ปุ่ม Create a new project (สร้างโปรเจ็กต์ใหม่) ที่หน้าต่างต้อนรับแรกสุด
  2. เลือกเทมเพลต Class Library (สำคัญมาก):
    • ในช่องค้นหาด้านบน ให้พิมพ์คำว่า Class Library
    • มองหาเทมเพลตที่ชื่อว่า Class Library (ที่มีไอคอนโลโก้ภาษา C# สีม่วงเข้ม และมีคำระบบปฏิบัติการกำกับด้านล่างว่า Windows, macOS, Linux)
    • กดปุ่ม Next
  3. ตั้งชื่อและเลือกโฟลเดอร์โปรเจ็กต์ (Configure your new project):
    • Project name: ตั้งชื่อปลั๊กอินตามที่ต้องการ (เช่น RevitToolkit หรือ BIMToolkit)
    • Location: เลือกโฟลเดอร์สำหรับเก็บไฟล์โค้ดของคุณตามความเหมาะสม
    • กดปุ่ม Next
  4. เลือกเวอร์ชันของ .NET (Additional information):
    • ในช่อง Framework ให้เลือกเป็น .NET 8.0 (Long-Term Support) (สำหรับพัฒนาบน Revit 2025/2026) หรือ .NET 10.0 (สำหรับพัฒนาบน Revit 2027 ขึ้นไป)
    • กดปุ่ม Create เพื่อจบการตั้งค่าเริ่มต้นครับ

⚙️ ค่าแกนหลักใน .csproj

Section titled “⚙️ ค่าแกนหลักใน .csproj”

หลังจากสร้างโปรเจ็กต์เสร็จสมบูรณ์แล้ว ให้ทำการ ดับเบิลคลิกที่ชื่อโปรเจ็กต์ของคุณ (เช่น BIMToolkit) ในแถบ Solution Explorer เพื่อเปิดหน้าแก้ไขโครงสร้างไฟล์ XML .csproj ขึ้นมา และใส่ค่าคอนฟิกเพื่อเปิดใช้คุณสมบัติที่จำเป็นของ Revit ดังนี้ครับ:

โปรเจ็กต์.csproj
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<!-- ค่าเป้าหมายคือ .NET 8 (สำหรับ 2026) หรือแก้ไขเป็น net10.0-windows ถ้าใช้ 2027 -->
<TargetFramework>net8.0-windows</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<!-- ค่าบังคับสำหรับ Revit ต้องเป็น x64 เท่านั้น (ห้ามเป็น Any CPU) -->
<PlatformTarget>x64</PlatformTarget>
<!-- ซ่อนคำเตือนการชนเวอร์ชัน DLL (MSB3277) ที่เกิดจากระบบพึ่งพาของ RevitAPI เพื่อให้ Terminal สะอาด -->
<MSBuildWarningsAsMessages>MSB3277</MSBuildWarningsAsMessages>
</PropertyGroup>
<ItemGroup>
<!-- อ้างอิง Core API -->
<Reference Include="RevitAPI">
<HintPath>C:\Program Files\Autodesk\Revit 2026\RevitAPI.dll</HintPath>
<!-- สำคัญมาก: ห้าม copy ลงโฟลเดอร์ output เพราะ Revit มีไฟล์หลักนี้อยู่แล้ว -->
<Private>false</Private>
</Reference>
<!-- อ้างอิง UI API (สำหรับการทำหน้าต่าง Ribbon) -->
<Reference Include="RevitAPIUI">
<HintPath>C:\Program Files\Autodesk\Revit 2026\RevitAPIUI.dll</HintPath>
<!-- เหมือนด้านบน ห้าม copy ลง output -->
<Private>false</Private>
</Reference>
</ItemGroup>
</Project>

จุดที่ต้องระวัง

Section titled “จุดที่ต้องระวัง”
  • อย่าใช้ net10.0
  • อย่าใช้ Any CPU
  • อย่าให้ Revit API DLL ถูก copy ไป output ถ้าไม่จำเป็น

เช็กให้ผ่านก่อนทำขั้นต่อไป

Section titled “เช็กให้ผ่านก่อนทำขั้นต่อไป”
  • Build ผ่าน
  • ไม่มี path reference ผิด
  • หา RevitAPI.dll และ RevitAPIUI.dll เจอจริง