OFNHookProcOldStyle kanca işlemi ile Aç ve farklı Kaydet ortak iletişim kutularında kullanılan bir uygulama-tanımlı veya kütüphanede tanımlı geriçağırım işlevidir. İletileri veya bildirimleri iletişim kutusu yordamı için amaçlanan işlevini alır.
lpofnhookproc türü bir işaretçi bu geriçağırım işlevi tanımlar. OFNHookProcOldStyle uygulama-tanımlı veya kütüphanede tanımlı işlev adı için bir yertutucu.
Bir Aç veya farklı Kaydet ortak iletişim kutusu oluşturma ve bir kanca işlemi istediğiniz zaman ofn_explorer bayrağı belirtirseniz, bir Explorer tarzı OFNHookProc kancası yordamı kullanmanız gerekir.
(UINT geri OFNHookProcOldStyle hwnd hdlg, / / işlemek için iletişim kutusu penceresiUINTuiMsg / / ileti tanımlayıcısıwparamwParam, / / message parametresilparamlParam / / message parametresi);
UiMsg parametresi WM_INITDIALOG ileti gösteriyorsa, lParam değerleri ortak iletişim kutusunun oluşturulduğu belirtilen içeren bir OPENDOSYAADI yapısını bir işaretçidir.
Kanca işlemi sıfır döndürür, iletinin varsayılan iletişim kutusunu yordamı işler.
Kanca işlemi sıfır dışında bir değer döndürürse, varsayılan iletişim kutusunu yordamı iletiyi yoksayar.
Bir eski stil Aç veya farklı Kaydet iletişim kutusu oluşturmak için GetOpenFileName veya GetSaveFileName işlevlerini kullandığınızda, bir OFNHookProcOldStyle kancası yordamı sağlayabilirsiniz. Kanca işlemi etkinleştirmek için iletişim yaratma işlevine geçirilen OPENDOSYAADI yapısını kullanır. LpfnHook üye kancası yordamı işaretçinin belirtin ve bayrakları üye ofn_enablehook bayrağı belirtin.
Varsayılan iletişim kutusunu yordamı WM_INITDIALOG ileti kancası yordamı geçirmeden önce işler. Tüm iletiler için kanca işlemi ilk iletiyi alır. Ardından, varsayılan iletişim yordamı iletisini işler veya yoksaymasını kancası yordamı dönüş değeri belirler.
Kanca işlemi wm_ctlcolordlg ileti işlerse, iletişim kutusunun arka plan boyama için geçerli fırça tanıtıcı döndürmelidir. Genel olarak, bu kanca işlemi herhangi bir wm_ctlcolor * ileti işlerse, belirtilen denetim arka plan boyama için geçerli fırça tanıtıcı döndürmesi gerekir.
EndDialog işlevi kancası yordamı arama yapın. Bunun yerine kanca işlemi IDABORT değeri iletişim kutusunu yordamına wm_command ileti postalamak için PostMessage işlevini çağırabilirsiniz. IDABORT gönderme iletişim kutusunu kapatır ve iletişim kutusu işlevi false dönmesine neden olur. Neden kanca işlemi iletişim kutusunun kapalı bilmeniz gereken, kendi iletişim mekanizması kancası yordamı uygulamanız arasındaki sağlamalıdır.
Standart denetimler yaygın iletişim kutusunun alt yapabilirsiniz. Ancak, ortak iletişim kutusu yordamı da denetimleri alt olabilir. Kanca işlemi WM_INITDIALOG iletiyi işlerken bu nedenle alt denetimler olmalıdır. Bu alt yordamı ayarla iletişim kutusunu yordam tarafından alt yordamı önce Denetim özel iletileri almasını sağlar.
nbsp; Windows &NT: sürüm 3.1 veya üstü gerektirir.
Windows:Windows 95 veya sonraki sürümleri gerektirir.
Windows ce:Desteklenmeyen.
Header:Commdlg.h ilan etti.
İçe Library:Kullanıcı tanımlı.
Ortak iletişim kutusuna kitaplığın genel bakış, ortak iletişim kutusundaki işlevler, GetOpenFileName, GetSaveFileName, OFNHookProc, OPENDOSYAADI, WM_INITDIALOG