Здравствуйте, DBnew, Вы писали:
Весьма странно, должно...
А если попробовать
DB>Написал теперь так:
DB>DB> CPrintDialog dlg(FALSE,
PD_ALLPAGES /*| PD_COLLATE*/ | PD_NOPAGENUMS | PD_HIDEPRINTTOFILE | PD_NOSELECTION | PD_RETURNDC /*| PD_RETURNDEFAULT*/);
DB> if (dlg.DoModal()/*GetDefaults()*/) {
DB> ASSERT(dlg.m_pd.hDC != NULL);
DB> DEVMODE* pDevMode = reinterpret_cast<DEVMODE*>(::GlobalLock(dlg.m_pd.hDevMode));
DB> /*if(port)
DB> pDevMode->dmOrientation = DMORIENT_PORTRAIT,pDevMode->dmOrientation = DMORIENT_PORTRAIT;
DB> else
DB> pDevMode->dmOrientation = DMORIENT_LANDSCAPE,pDevMode->dmOrientation = DMORIENT_LANDSCAPE;
DB> pDevMode->dmFields |= DM_COPIES;
DB> pDevMode->dmCopies = countPage;
DB> VERIFY(::ResetDC(dlg.m_pd.hDC, pDevMode));
DB> ::GlobalUnlock(dlg.m_pd.hDevMode);*/
DB> }
DB>
и выставить руками нужное число копий то работает?
(не возбраняется посмотреть в отладчике pDevMode на предмет поставленных ф-ей полей)
+ поэкспериментируй с DEVMODE::dmCollate