OFNHookProcOldStyle

ขั้นตอนของ hook OFNHookProcOldStyleมีฟังก์ชันการเรียกกลับโปรแกรมประยุกต์ หรือไลบรารีที่กำหนดเองที่ใช้กับการเปิดและบันทึกเป็นทั่วไปกล่องโต้ตอบ ฟังก์ชันนี้ได้รับข้อความหรือวัตถุประสงค์สำหรับขั้นตอนในกล่องโต้ตอบการแจ้งเตือน.

ชนิดLPOFNHOOKPROCกำหนดเป็นตัวชี้ไปยังฟังก์ชันนี้ติดต่อกลับ OFNHookProcOldStyleคือตัวยึดสำหรับชื่อฟังก์ชันของโปรแกรมประยุกต์ที่กำหนดเอง หรือไลบรารีที่กำหนดเอง.

ถ้าคุณระบุค่าสถานะ OFN_EXPLORER เมื่อคุณสร้างการเปิดหรือบันทึกเป็นทั่วไปกล่องโต้ตอบ และคุณต้องเป็นขั้นตอนของ hook คุณต้องใช้เป็นขั้นตอนของ hook Explorer แบบOFNHookProc.

 (UINT ติดต่อกลับ OFNHookProcOldStyle HWND  hdlg, / / จัดการไปยังหน้าต่างกล่องโต้ตอบUINTuiMsg / / ข้อความที่ระบุWPARAMwParam, / / ความพารามิเตอร์LPARAMlParam / / ความพารามิเตอร์);
 

พารามิเตอร์

hdlg
จัดการกับการเปิดหรือบันทึกเป็นช่องหน้าต่างโต้ตอบซึ่งข้อความมีจุดมุ่งหมาย.
uiMsg
ระบุข้อความได้รับ.
wParam
ระบุข้อมูลเพิ่มเติมเกี่ยวกับข้อความ ความหมายที่แน่นอนขึ้นกับค่าของพารามิเตอร์uiMsg .
lParam
ระบุข้อมูลเพิ่มเติมเกี่ยวกับข้อความ ความหมายที่แน่นอนขึ้นกับค่าของพารามิเตอร์uiMsg .

ถ้าพารามิเตอร์uiMsgบ่งชี้ความWM_INITDIALOG , lParamเป็นตัวชี้ไปยังประกอบด้วยOPENFILENAMEโครงสร้างที่ค่าที่ระบุเมื่อสร้างกล่องโต้ตอบทั่วไป.

ส่งกลับค่า

ถ้าขั้นตอนของ hook ส่งกลับค่าศูนย์ ขั้นตอนเริ่มต้นกล่องโต้ตอบการประมวลผลข้อความ.

ถ้าขั้นตอนของ hook ส่งกลับค่าไม่ใช่ศูนย์ ขั้นตอนเริ่มต้นกล่องโต้ตอบการละเว้นข้อความ.

หมายเหตุ

เมื่อคุณใช้ฟังก์ชันGetOpenFileNameหรือGetSaveFileNameเพื่อสร้างเป็นแบบเปิดหรือบันทึกเป็นกล่องโต้ตอบ คุณสามารถให้มีขั้นตอนของ hook OFNHookProcOldStyle เมื่อต้องการเปิดการใช้งานในขั้นตอนของ hook ใช้โครงสร้างOPENFILENAMEที่คุณส่งไปยังฟังก์ชันสร้างการโต้ตอบ ระบุตัวชี้ไปยังขั้นตอนของ hook ในสมาชิกlpfnHookและระบุค่าสถานะ OFN_ENABLEHOOK ในสถานะสมาชิก.

ขั้นตอนเริ่มต้นกล่องโต้ตอบการประมวลผลข้อความ WM_INITDIALOG ก่อนที่จะส่งไปยังขั้นตอนของ hook อื่น ๆ ความ ขั้นตอนของ hook การรับข้อความก่อน ค่าส่งคืนของขั้นตอนของ hook แล้ว กำหนดว่า กระบวนการโต้ตอบการเริ่มต้นการประมวลผลข้อความ หรือละเว้นได้.

ถ้าขั้นตอนของ hook การประมวลผลข้อความ WM_CTLCOLORDLG มันต้องส่งกลับหมายเลขอ้างอิงของแปรงที่ถูกต้องสำหรับการวาดภาพเป็นพื้นหลังของกล่องโต้ตอบ ทั่วไป ถ้าข้อใด ๆ WM_CTLCOLOR ความใช้ประมวลผลในขั้นตอนของ hook จะต้องส่งกลับหมายเลขอ้างอิงของแปรงที่ถูกต้องสำหรับการวาดภาพเป็นพื้นหลังของตัวควบคุมที่ระบุ.

เรียกใช้ฟังก์ชันEndDialogจากขั้นตอนของ hook แทน ขั้นตอนของ hook สามารถเรียกใช้ฟังก์ชันPostMessageเพื่อลงรายการบัญชีข้อความ WM_COMMAND ที่ มีค่า IDABORT ในกระบวนการกล่องโต้ตอบ IDABORT การลงรายการบัญชีปิดกล่องโต้ตอบ และการทำให้ฟังก์ชันในกล่องโต้ตอบเพื่อส่งกลับ FALSE ถ้าคุณจำเป็นต้องรู้ว่าทำไมขั้นตอนของ hook การปิดกล่องโต้ตอบ คุณต้องมีกลไกของการสื่อสารระหว่างขั้นตอนของ hook และโปรแกรมประยุกต์ของคุณ.

คุณสามารถซับคลาสตัวควบคุมมาตรฐานของกล่องโต้ตอบทั่วไป อย่างไรก็ตาม กระบวนงานของกล่องโต้ตอบการทั่วไปอาจยังระดับชั้นย่อยการควบคุม เนื่องจากการนี้ คุณควรควบคุมระดับชั้นย่อยเมื่อขั้นตอนของ hook การประมวลผลข้อความ WM_INITDIALOG นี้ยืนยันว่า กระบวนงานระดับชั้นย่อยของคุณได้รับเฉพาะตัวควบคุมข้อความก่อนขั้นตอนระดับชั้นย่อยกำหนด โดยขั้นตอนในกล่องโต้ตอบ.

QuickInfo

nbsp Windows &NT:ต้องการเวอร์ชัน 3.1 หรือรุ่นที่ใหม่กว่า
Windows:ต้องใช้ Windows 95 หรือรุ่นที่ใหม่กว่า
Windows CE:ไม่สนับสนุน
หัวข้อ:ประกาศใน commdlg.h
ไลบรารีที่นำเข้า:ผู้ใช้กำหนด.

ดูเพิ่มเติม

ภาพรวมไลบรารีของกล่องโต้ตอบทั่วไปฟังก์ชันกล่องโต้ตอบทั่วไป GetOpenFileName, GetSaveFileName, OFNHookProc, OPENFILENAME, WM_INITDIALOG

Index