You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
93 lines
2.0 KiB
93 lines
2.0 KiB
#include "faxrtp.h"
|
|
#pragma hdrstop
|
|
|
|
|
|
|
|
BOOL
|
|
TiffRoutePrint(
|
|
LPCTSTR lpctstrTiffFileName,
|
|
PTCHAR ptcPrinter
|
|
)
|
|
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
Prints TIFF file.
|
|
|
|
Arguments:
|
|
|
|
lpctstrTiffFileName [in] - Name of TIFF file to print
|
|
ptcPrinter [in] - Printer to print to
|
|
|
|
Return Value:
|
|
|
|
TRUE for success, FALSE on error
|
|
|
|
--*/
|
|
|
|
{
|
|
PTCHAR ptcDevice = NULL;
|
|
BOOL bResult;
|
|
|
|
DEBUG_FUNCTION_NAME(TEXT("TiffRoutePrint"));
|
|
|
|
|
|
if( (ptcDevice = _tcstok( ptcPrinter, TEXT(","))) )
|
|
{
|
|
if (IsPrinterFaxPrinter( ptcDevice ))
|
|
{
|
|
//
|
|
// return TRUE here so we don't try to route it to this printer again
|
|
//
|
|
DebugPrintEx (DEBUG_WRN,
|
|
TEXT("Attempt to print to our fax printer was blocked"));
|
|
FaxLog(
|
|
FAXLOG_CATEGORY_INBOUND,
|
|
FAXLOG_LEVEL_MIN,
|
|
2,
|
|
MSG_FAX_PRINT_TO_FAX,
|
|
lpctstrTiffFileName,
|
|
ptcDevice
|
|
);
|
|
|
|
return TRUE;
|
|
}
|
|
}
|
|
bResult = TiffPrint (lpctstrTiffFileName, ptcPrinter);
|
|
if (bResult)
|
|
{
|
|
//
|
|
// Success
|
|
//
|
|
FaxLog(
|
|
FAXLOG_CATEGORY_INBOUND,
|
|
FAXLOG_LEVEL_MAX,
|
|
2,
|
|
MSG_FAX_PRINT_SUCCESS,
|
|
lpctstrTiffFileName,
|
|
ptcPrinter
|
|
);
|
|
}
|
|
else
|
|
{
|
|
DWORD dwLastError = GetLastError ();
|
|
//
|
|
// Failure
|
|
//
|
|
FaxLog(
|
|
FAXLOG_CATEGORY_INBOUND,
|
|
FAXLOG_LEVEL_MIN,
|
|
3,
|
|
MSG_FAX_PRINT_FAILED,
|
|
lpctstrTiffFileName,
|
|
ptcPrinter,
|
|
DWORD2HEX(dwLastError)
|
|
);
|
|
//
|
|
// Restore last error in case FaxLog changed it
|
|
//
|
|
SetLastError (dwLastError);
|
|
}
|
|
return bResult;
|
|
} // TiffRoutePrint
|