COleServerDoc::OnExecOleCmd

Hresult ใน OnExecOleCmd ( const GUID * pGroup, DWORD nCmdID, DWORD nCmdExecOut, VARIANTARG * pvaIn, VARIANTARG * pvaOut );

ส่งกลับค่า

ส่งกลับค่าS_OKถ้าสำเร็จ รหัสข้อผิดพลาดต่อไปนี้หนึ่งอย่างอื่นใด:

ค่า คำอธิบาย
E_UNEXPECTED เกิดข้อผิดพลาดที่ไม่คาดคิด
E_FAIL เกิดข้อผิดพลาด
E_NOTIMPL MFC ที่บ่งชี้ว่า ตัวเองควรพยายามที่จะแปล และส่งคำสั่ง
OLECMDERR_E_UNKNOWNGROUP pGroupเป็นไม่ใช่ -NULLแต่ไม่ระบุกลุ่มคำสั่งที่รู้จัก
OLECMDERR_E_NOTSUPPORTED nCmdIDไม่รับรู้เป็นคำสั่งที่ถูกต้องในกลุ่มpGroup
OLECMDERR_DISABLED คำสั่งที่ระบุโดยnCmdIDถูกปิดใช้งาน และไม่สามารถดำเนินการ
OLECMDERR_NOHELP โทรถามวิธีใช้ในคำสั่งที่ระบุโดยnCmdIDแต่ไม่มีวิธีที่จะพร้อมใช้งาน
OLECMDERR_CANCELED ผู้ใช้ยกเลิกการดำเนินการ

พารามิเตอร์

pGroup

ตัวชี้การ GUID ที่ระบุชุดของคำสั่ง สามารถเป็นNULLเพื่อบ่งชี้กลุ่มคำสั่งเริ่มต้น?

nCmdID

คำสั่งการดำเนินการ ต้องอยู่ในกลุ่มที่ระบุโดยpGroup?

nCmdExecOut

วิธีวัตถุควรรันคำสั่ง น้อยหนึ่งค่าต่อไปนี้จากการแจงนับOLECMDEXECOPT:

OLECMDEXECOPT_DODEFAULT

OLECMDEXECOPT_PROMPTUSER

OLECMDEXECOPT_DONTPROMPTUSER

OLECMDEXECOPT_SHOWHELP

pvaIn

ชี้การVARIANTARGที่ประกอบด้วยการป้อนค่าอาร์กิวเมนต์สำหรับคำสั่ง สามารถเป็นNULL?

pvaOut

ชี้ไปที่VARIANTARGเพื่อรับผลลัพธ์ส่งกลับค่าจากคำสั่ง สามารถเป็นNULL?

หมายเหตุ

กรอบการเรียกฟังก์ชันนี้จะดำเนินการคำสั่งที่ระบุ หรือแสดงวิธีใช้สำหรับคำสั่ง?

COleCmdUIสามารถใช้เมื่อต้องการเปิดการใช้งาน ปรับปรุง และตั้งค่าคุณสมบัติอื่น ๆ ของคำสั่งของอินเทอร์เฟซสำหรับผู้ใช้ DocObject หลังจากคำสั่งจะกำหนดค่าเริ่มต้น คุณสามารถดำเนินการกับOnExecOleCmd?

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

ส่วนใหญ่ของคำสั่งใช้อาร์กิวเมนต์ หรือคืนค่า สำหรับส่วนใหญ่ของคำสั่ง ผู้เรียกสามารถส่งผ่านค่า NULLs สำหรับpvaInและpvaOut สำหรับคำสั่งที่คาดว่าค่าที่ป้อน ผู้เรียกสามารถประกาศ และการเตรียมใช้งานตัวแปรVARIANTARGและส่งตัวชี้ไปยังตัวแปรในpvaIn คำสั่งที่ต้องการค่าเดียว อาร์กิวเมนต์สามารถจัดเก็บไว้ในVARIANTARGโดยตรง และส่งผ่านไปยังฟังก์ชัน อาร์กิวเมนต์หลายที่ต้องบรรจุภายในVARIANTARGที่ใช้วิธีการใดวิธีการหนึ่งในชนิดที่ได้รับการสนับสนุน (เช่นIDispatchและSAFEARRAY )?

ในทำนองเดียวกัน ถ้าคำสั่งส่งกลับอาร์กิวเมนต์ ผู้เรียกที่คาดว่าจะประกาศการVARIANTARGเตรียมใช้งานการVT_EMPTYและส่งอยู่ในpvaOut ถ้าคำสั่งส่งกลับค่าเดียว วัตถุสามารถเก็บค่านั้นโดยตรงในpvaOut ค่าการแสดงผลหลายที่ต้องบรรจุในบางวิธีที่เหมาะสมสำหรับการVARIANTARG?

Base-คลาสใช้งานฟังก์ชันนี้จะเดินโครงสร้างของOLE_COMMAND_MAPเกี่ยวข้องกับคำสั่งเป้าหมาย และความพยายามที่ส่งคำสั่งในการจัดการที่เหมาะสม Base-คลาสใช้งานทำงาน ด้วยคำสั่งที่ไม่ยอมรับอาร์กิวเมนต์ หรือส่งคืนค่าเท่านั้น ถ้าคุณต้องการจัดการกับคำสั่งที่ยอมรับอาร์กิวเมนต์ หรือส่งกลับค่า คุณต้องแทนที่ฟังก์ชันนี้ และทำงานกับพารามิเตอร์pvaInและpvaOutด้วยตัวคุณเอง?

ภาพรวม COleServerDoc |nbsp สมาชิกของคลาส| แผนภูมิของลำดับชั้น(&N)

ดูเพิ่มเติมnbspCOleCmdUI(&N)

Index