Sharpgentools
ตัวสร้างรหัสอินเตอร์ประหว่าง C ++ ที่แม่นยำและมีประสิทธิภาพสูงสำหรับ C#
คุณสมบัติ
- รหัสที่แม่นยำและรวดเร็วสำหรับอินเตอร์เฟส C ++ และ COM จากส่วนหัว C ++
- ไม่มีการพึ่งพาการสนับสนุน. NET Runtime Com
- รองรับข้อมูลรหัสผ่านรหัสผ่านโครงการ MSBuild และการอ้างอิงแพ็คเกจ
- ชื่อไลบรารีรันไทม์ที่สามารถใช้งานได้และชื่อประเภทรองรับรันไทม์ (ไลบรารีเริ่มต้นคือ Sharpgen.runtime)
- โครงการที่ใช้คลาสสนับสนุนรันไทม์ Sharpgentools ของตนเองสามารถเพิ่มกฎการแมปเพื่อให้แน่ใจว่ารหัสที่สร้างขึ้นของพวกเขาใช้ไลบรารีสนับสนุนรันไทม์ของพวกเขา
ส่วนประกอบใน repo นี้
- ความคมชัด
- เอ็นจิ้นรหัส Gen ที่ใช้งาน CASTXML เพื่อแยกวิเคราะห์ C ++ จากนั้นสร้าง C# Interop Code
- API สำหรับปลั๊กอิน SDK SharpGen เช่นผู้ให้บริการเอกสาร
- Sharpgentools.sdk
- เครื่องมือ MSBuild เพื่อรวม SharpGen เข้ากับโครงการโดยตรง
- แพลตฟอร์มปลั๊กอินการสร้างรหัสเวลาสร้าง
- Sharpgen.runtime
- คลาสรองรับรันไทม์สำหรับรหัสที่สร้างโดย SharpGen
- Sharpgen.runtime.com
- คลาสที่แมปสำหรับอินเทอร์เฟซหลักในรันไทม์ COM และ Windows
ความต้องการ
ใช้
- โครงการ MSBuild สไตล์ SDK (CPS)
- .net Environment อย่างน้อยหนึ่งอย่างต่อไปนี้:
- .NET SDK (7 หรือใหม่กว่า)
- .NET CORE SDK (3.1 หรือใหม่กว่า)
- Visual Studio 2019 พร้อมเวิร์กโหลด Desktop .NET, .NET Framework 4.7.2 SDK หรือใหม่กว่า
- ทำให้ไฟล์การแมปใด ๆ เป็นรายการ
SharpGenMapping ใน. .csproj ของคุณ
เพื่อสร้าง
- .NET SDK: 7.0 หรือใหม่กว่า
- CMake: 3.0 หรือใหม่กว่า
- การทดสอบ SDK ต้องใช้ Windows X64, VS2022 พร้อมคอมไพเลอร์ X86 และ X64 C ++ รุ่น PowerShell ล่าสุด