RegisterPrintNotifyは 2000と XPで異なる

XPの printui.dll を 2000に持って行ったらクラッシュしたので調べてみたところ関数の仕様が違うのが判明。ちなみに、 RegisterPrintNotifyをコールしてるのは shell32.dll, duser.dll, shlwapi.dll

Windows 2000
WINAPI int RegisterPrintNotify(_in wchar_t *string, _in DWORD , _out DWORD)

Windows XP
WINAPI int RegisterPrintNotify(_in *string, _in DWORD , _out DWORD , _in bool callbFolderRefresh)

2000の方で XP版の RegisterPrintNotifyを呼ぶ時はRegisterPrintNotiXPとでもするかな ・ω・

Printui.dllのちょっとした違いとしては、2000版にある bPrintDlgSheetsPropPages @8 が XP版にはない代わりにDocumentPropertiesWrap @1ch がある なおこちらをよびだしているのは comdlg32.dll のみ

おすすめ

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です