Задайте вопросЗадайте вопрос
 

ОтвеченоXPS Sample Driver question

Ответы

  • 2 июля 2009 г. 8:24digitalmercenary Медали пользователяМедали пользователяМедали пользователяМедали пользователяМедали пользователя
     Отвечено
    Hi!

    You can to this in the User Interface DLL. see http://msdn.microsoft.com/en-us/library/bb734121.aspx with the DOCUMENTEVENT_STARTDOC event.

    • Помечено в качестве ответаrjenovai 22 октября 2009 г. 18:01
    •  
  • 22 октября 2009 г. 18:00rjenovai Медали пользователяМедали пользователяМедали пользователяМедали пользователяМедали пользователя
     ОтвеченоС кодом
    I got it to work after adding the following to DOCUMENTEVENT_QUERYFILTER:

    if (pvOut)
                {
                    DOCEVENT_FILTER* pFilter = (DOCEVENT_FILTER*)pvOut;
                    pFilter->cElementsReturned = 6;
                    pFilter->aDocEventCall[0] = DOCUMENTEVENT_ENDDOCPOST;
                    pFilter->aDocEventCall[1] = DOCUMENTEVENT_STARTDOC;
                    pFilter->aDocEventCall[2] = DOCUMENTEVENT_ENDDOC;
                    pFilter->aDocEventCall[3] = DOCUMENTEVENT_STARTPAGE;
                    pFilter->aDocEventCall[4] = DOCUMENTEVENT_ENDPAGE;
                    pFilter->aDocEventCall[5] = DOCUMENTEVENT_XPS_ADDFIXEDDOCUMENTSEQUENCEPOST;
                    *piResult = DOCUMENTEVENT_SUCCESS;
                    ret = DOCUMENTEVENT_SUCCESS;
                   
                }
                else
                {
                    *piResult = DOCUMENTEVENT_UNSUPPORTED;
                    ret = E_NOTIMPL;
                }
    
    I also made sure that piResult was not set as an unreferenced parameter

    Once these were added, the STARTDOC, ENDDOC, etc.. events were fired in windows x64.
    • Помечено в качестве ответаrjenovai 22 октября 2009 г. 18:01
    •  

Все ответы