Проблемы с печатью

Тема в разделе "WASM.WIN32", создана пользователем MijkhailSokolov86, 2 сен 2008.

  1. MijkhailSokolov86

    MijkhailSokolov86 New Member

    Публикаций:
    0
    Регистрация:
    2 сен 2008
    Сообщения:
    1
    Здравствуйте. Незнал куда лучше обратиться, и вот решил сюда:
    собственно проблема, написан на ассемблере код печати (masm)
    Вот этот код на какихто принтерах печатает а на каких то нет!
    -----------------------------------------------------------------------------
    $ASSPRN proc
    invoke RtlZeroMemory, addr docinfo, type DOCINFO
    mov docinfo.cbSize, type DOCINFO
    push offset szPrn
    pop docinfo.lpszDocName
    invoke RtlZeroMemory, addr prndlg, type PRINTDLG
    mov prndlg.lStructSize, type PRINTDLG
    mov prndlg.Flags, PD_ALLPAGES + PD_COLLATE + PD_RETURNDC + PD_RETURNDEFAULT
    mov prndlg.nCopies, 1
    invoke PrintDlg, addr prndlg
    test eax, eax
    jz exit_init_prn

    invoke StartDoc, prndlg.hDC, addr docinfo
    invoke StartPage, prndlg.hDC
    exit_init_prn:
    ;//////////////////////////////////////////////готовим контекст
    invoke GetDC, hwnd
    invoke CreateCompatibleDC,eax;
    mov sdc, eax
    invoke GetDC, hwnd
    invoke CreateCompatibleBitmap, eax,1280,800;
    invoke SelectObject, sdc, eax
    invoke GetDC, hwnd
    invoke BitBlt, sdc, 0, 0, 1280, 800, eax, 0, 0, WHITENESS
    ;///////////////////////////////////////////////////////////////////////
    ret
    $ASSPRN endp
    а вот сама процедура печати
    $BLT_PRINT proc
    invoke StretchBlt,prndlg.hDC, 0, 0, 2000,1969, sdc, 0,0, 1024,800, SRCCOPY
    $BLT_PRINT endp
    -------------------------------------------------------------------------------------
    Ребята если кто то сможет подсказать возможную проблему в коде - буду очень признателен