ทำ Noncreatable วัตถุ ATL

คุณสามารถเปลี่ยนแอตทริบิวต์ของวัตถุใช้ ATL COM เพื่อให้เครื่องไคลเอ็นต์อัตโนมัติโดยตรงไม่สามารถสร้างวัตถุ ในกรณีนี้ วัตถุจะถูกส่งกลับผ่านการเรียกเมธอดบนวัตถุอื่น แทนที่จะสร้างขึ้นโดยตรง?

เพื่อทำการ noncreatable วัตถุ

  1. เอาOBJECT_ENTRYสำหรับวัตถุจากแผนที่วัตถุ ATL?

  2. เพิ่มแอตทริบิวต์noncreatableไปที่ coclass ตัวอย่างเช่น:
[
   uuid(A1992E3D-3CF0-11D0-826F-00A0C90F2851)
   helpstring("MyObject")
  noncreatable
]
coclass MyObject
{
   อินเทอร์เฟซ [เริ่มต้น] IMyInterface
}

Index