6 * THIS SOFTWARE IS NOT COPYRIGHTED
8 * This source code is offered for use in the public domain. You may
9 * use, modify or distribute it freely.
11 * This code is distributed in the hope that it will be useful but
12 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
13 * DISCLAIMED. This includes but is not limited to warranties of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
21 #pragma GCC system_header
30 typedef struct _FAX_TIME
34 } FAX_TIME
, *PFAX_TIME
;
41 } FAX_ENUM_JOB_SEND_ATTRIBUTES
;
48 } FAX_ENUM_DELIVERY_REPORT_TYPES
;
52 FAXLOG_CATEGORY_INIT
= 1,
53 FAXLOG_CATEGORY_OUTBOUND
,
54 FAXLOG_CATEGORY_INBOUND
,
55 FAXLOG_CATEGORY_UNKNOWN
56 } FAX_ENUM_LOG_CATEGORIES
;
60 FAXLOG_LEVEL_NONE
= 0,
64 } FAX_ENUM_LOG_LEVELS
;
70 } FAX_ENUM_PORT_OPEN_TYPE
;
78 } FAX_ENUM_JOB_COMMANDS
;
84 #define JT_FAIL_RECEIVE 4
86 #define JS_PENDING 0x0
87 #define JS_INPROGRESS 0x1
88 #define JS_DELETING 0x2
91 #define JS_NOLINE 0x10
92 #define JS_RETRYING 0x20
93 #define JS_RETRIES_EXCEEDED 0x40
95 #define FPS_DIALING 0x20000001
96 #define FPS_SENDING 0x20000002
97 #define FPS_RECEIVING 0x20000004
98 #define FPS_COMPLETED 0x20000008
99 #define FPS_HANDLED 0x20000010
100 #define FPS_UNAVAILABLE 0x20000020
101 #define FPS_BUSY 0x20000040
102 #define FPS_NO_ANSWER 0x20000080
103 #define FPS_BAD_ADDRESS 0x20000100
104 #define FPS_NO_DIAL_TONE 0x20000200
105 #define FPS_DISCONNECTED 0x20000400
106 #define FPS_FATAL_ERROR 0x20000800
107 #define FPS_NOT_FAX_CALL 0x20001000
108 #define FPS_CALL_DELAYED 0x20002000
109 #define FPS_CALL_BLACKLISTED 0x20004000
110 #define FPS_INITIALIZING 0x20008000
111 #define FPS_OFFLINE 0x20010000
112 #define FPS_RINGING 0x20020000
113 #define FPS_AVAILABLE 0x20100000
114 #define FPS_ABORTING 0x20200000
115 #define FPS_ROUTING 0x20400000
116 #define FPS_ANSWERED 0x20800000
118 #define FPF_RECEIVE 0x1
120 #define FPF_VIRTUAL 0x4
122 typedef struct _FAX_JOB_PARAMA
125 LPCSTR RecipientNumber
;
126 LPCSTR RecipientName
;
129 LPCSTR SenderCompany
;
132 DWORD ScheduleAction
;
133 SYSTEMTIME ScheduleTime
;
134 DWORD DeliveryReportType
;
135 LPCSTR DeliveryReportAddress
;
138 DWORD_PTR Reserved
[3];
139 } FAX_JOB_PARAMA
, *PFAX_JOB_PARAMA
;
141 typedef struct _FAX_JOB_PARAMW
144 LPCWSTR RecipientNumber
;
145 LPCWSTR RecipientName
;
148 LPCWSTR SenderCompany
;
151 DWORD ScheduleAction
;
152 SYSTEMTIME ScheduleTime
;
153 DWORD DeliveryReportType
;
154 LPCWSTR DeliveryReportAddress
;
155 LPCWSTR DocumentName
;
157 DWORD_PTR Reserved
[3];
158 } FAX_JOB_PARAMW
, *PFAX_JOB_PARAMW
;
160 typedef struct _FAX_COVERAGE_INFOA
164 LPCSTR CoverPageName
;
165 BOOL UseServerCoverPage
;
170 LPCSTR RecStreetAddress
;
176 LPCSTR RecDepartment
;
177 LPCSTR RecOfficeLocation
;
179 LPCSTR RecOfficePhone
;
186 LPCSTR SdrDepartment
;
187 LPCSTR SdrOfficeLocation
;
189 LPCSTR SdrOfficePhone
;
195 } FAX_COVERAGE_INFOA
, *PFAX_COVERAGE_INFOA
;
197 typedef struct _FAX_COVERAGE_INFOW
201 LPCWSTR CoverPageName
;
202 BOOL UseServerCoverPage
;
205 LPCWSTR RecFaxNumber
;
207 LPCWSTR RecStreetAddress
;
213 LPCWSTR RecDepartment
;
214 LPCWSTR RecOfficeLocation
;
215 LPCWSTR RecHomePhone
;
216 LPCWSTR RecOfficePhone
;
219 LPCWSTR SdrFaxNumber
;
223 LPCWSTR SdrDepartment
;
224 LPCWSTR SdrOfficeLocation
;
225 LPCWSTR SdrHomePhone
;
226 LPCWSTR SdrOfficePhone
;
232 } FAX_COVERAGE_INFOW
, *PFAX_COVERAGE_INFOW
;
234 typedef struct _FAX_GLOBAL_ROUTING_INFOA
241 LPCSTR ExtensionImageName
;
242 LPCSTR ExtensionFriendlyName
;
243 } FAX_GLOBAL_ROUTING_INFOA
, *PFAX_GLOBAL_ROUTING_INFOA
;
245 typedef struct _FAX_GLOBAL_ROUTING_INFOW
250 LPCWSTR FriendlyName
;
251 LPCWSTR FunctionName
;
252 LPCWSTR ExtensionImageName
;
253 LPCWSTR ExtensionFriendlyName
;
254 } FAX_GLOBAL_ROUTING_INFOW
, *PFAX_GLOBAL_ROUTING_INFOW
;
256 typedef struct _FAX_JOB_ENTRYA
266 LPCSTR RecipientNumber
;
267 LPCSTR RecipientName
;
270 LPCSTR SenderCompany
;
273 DWORD ScheduleAction
;
274 SYSTEMTIME ScheduleTime
;
275 DWORD DeliveryReportType
;
276 LPCSTR DeliveryReportAddress
;
278 } FAX_JOB_ENTRYA
, *PFAX_JOB_ENTRYA
;
280 typedef struct _FAX_JOB_ENTRYW
290 LPCWSTR RecipientNumber
;
291 LPCWSTR RecipientName
;
294 LPCWSTR SenderCompany
;
297 DWORD ScheduleAction
;
298 SYSTEMTIME ScheduleTime
;
299 DWORD DeliveryReportType
;
300 LPCWSTR DeliveryReportAddress
;
301 LPCWSTR DocumentName
;
302 } FAX_JOB_ENTRYW
, *PFAX_JOB_ENTRYW
;
304 typedef struct _FAX_PORT_INFOA
315 } FAX_PORT_INFOA
, *PFAX_PORT_INFOA
;
317 typedef struct _FAX_PORT_INFOW
328 } FAX_PORT_INFOW
, *PFAX_PORT_INFOW
;
330 typedef struct _FAX_ROUTING_METHODA
339 LPCSTR ExtensionImageName
;
340 LPCSTR ExtensionFriendlyName
;
341 } FAX_ROUTING_METHODA
, *PFAX_ROUTING_METHODA
;
343 typedef struct _FAX_ROUTING_METHODW
350 LPCWSTR FriendlyName
;
351 LPCWSTR FunctionName
;
352 LPCWSTR ExtensionImageName
;
353 LPCWSTR ExtensionFriendlyName
;
354 } FAX_ROUTING_METHODW
, *PFAX_ROUTING_METHODW
;
356 typedef struct _FAX_CONFIGURATIONA
365 BOOL PauseServerQueue
;
366 FAX_TIME StartCheapTime
;
367 FAX_TIME StopCheapTime
;
368 BOOL ArchiveOutgoingFaxes
;
369 LPCSTR ArchiveDirectory
;
370 LPCSTR InboundProfile
;
371 } FAX_CONFIGURATIONA
, *PFAX_CONFIGURATIONA
;
373 typedef struct _FAX_CONFIGURATIONW
382 BOOL PauseServerQueue
;
383 FAX_TIME StartCheapTime
;
384 FAX_TIME StopCheapTime
;
385 BOOL ArchiveOutgoingFaxes
;
386 LPCWSTR ArchiveDirectory
;
387 LPCWSTR InboundProfile
;
388 } FAX_CONFIGURATIONW
, *PFAX_CONFIGURATIONW
;
390 typedef struct _FAX_DEVICE_STATUSA
401 LPCSTR RoutingString
;
403 LPCSTR RecipientName
;
408 FILETIME SubmittedTime
;
412 } FAX_DEVICE_STATUSA
, *PFAX_DEVICE_STATUSA
;
414 typedef struct _FAX_DEVICE_STATUSW
422 LPCWSTR DocumentName
;
425 LPCWSTR RoutingString
;
427 LPCWSTR RecipientName
;
431 LPCWSTR StatusString
;
432 FILETIME SubmittedTime
;
436 } FAX_DEVICE_STATUSW
, *PFAX_DEVICE_STATUSW
;
438 typedef struct _FAX_LOG_CATEGORYA
443 } FAX_LOG_CATEGORYA
, *PFAX_LOG_CATEGORYA
;
445 typedef struct _FAX_LOG_CATEGORYW
450 } FAX_LOG_CATEGORYW
, *PFAX_LOG_CATEGORYW
;
452 typedef struct _FAX_CONTEXT_INFOA
456 CHAR ServerName
[MAX_COMPUTERNAME_LENGTH
+ 1];
457 } FAX_CONTEXT_INFOA
, *PFAX_CONTEXT_INFOA
;
459 typedef struct _FAX_CONTEXT_INFOW
463 WCHAR ServerName
[MAX_COMPUTERNAME_LENGTH
+ 1];
464 } FAX_CONTEXT_INFOW
, *PFAX_CONTEXT_INFOW
;
466 typedef struct _FAX_PRINT_INFOA
470 LPCSTR RecipientName
;
471 LPCSTR RecipientNumber
;
473 LPCSTR SenderCompany
;
475 LPCSTR SenderBillingCode
;
477 LPCSTR DrEmailAddress
;
478 LPCSTR OutputFileName
;
479 } FAX_PRINT_INFOA
, *PFAX_PRINT_INFOA
;
481 typedef struct _FAX_PRINT_INFOW
485 LPCWSTR RecipientName
;
486 LPCWSTR RecipientNumber
;
488 LPCWSTR SenderCompany
;
490 LPCWSTR SenderBillingCode
;
492 LPCWSTR DrEmailAddress
;
493 LPCWSTR OutputFileName
;
494 } FAX_PRINT_INFOW
, *PFAX_PRINT_INFOW
;
496 typedef BOOL (CALLBACK
*PFAX_RECIPIENT_CALLBACKA
)(HANDLE FaxHandle
, DWORD RecipientNumber
, LPVOID Context
, PFAX_JOB_PARAMA JobParams
, PFAX_COVERAGE_INFOA CoverpageInfo
);
497 typedef BOOL (CALLBACK
*PFAX_RECIPIENT_CALLBACKW
)(HANDLE FaxHandle
, DWORD RecipientNumber
, LPVOID Context
, PFAX_JOB_PARAMW JobParams
, PFAX_COVERAGE_INFOW CoverpageInfo
);
499 #ifndef _DISABLE_TIDENTS
502 typedef FAX_JOB_PARAMW FAX_JOB_PARAM
;
503 typedef PFAX_JOB_PARAMW PFAX_JOB_PARAM
;
504 typedef FAX_COVERAGE_INFOW FAX_COVERAGE_INFO
;
505 typedef PFAX_COVERAGE_INFOW PFAX_COVERAGE_INFO
;
506 typedef FAX_GLOBAL_ROUTING_INFOW FAX_GLOBAL_ROUTING_INFO
;
507 typedef PFAX_GLOBAL_ROUTING_INFOW PFAX_GLOBAL_ROUTING_INFO
;
508 typedef FAX_JOB_ENTRYW FAX_JOB_ENTRY
;
509 typedef PFAX_JOB_ENTRYW PFAX_JOB_ENTRY
;
510 typedef FAX_PORT_INFOW FAX_PORT_INFO
;
511 typedef PFAX_PORT_INFOW PFAX_PORT_INFO
;
512 typedef FAX_ROUTING_METHODW FAX_ROUTING_METHOD
;
513 typedef PFAX_ROUTING_METHODW PFAX_ROUTING_METHOD
;
514 typedef FAX_CONFIGURATIONW FAX_CONFIGURATION
;
515 typedef PFAX_CONFIGURATIONW PFAX_CONFIGURATION
;
516 typedef FAX_DEVICE_STATUSW FAX_DEVICE_STATUS
;
517 typedef PFAX_DEVICE_STATUSW PFAX_DEVICE_STATUS
;
518 typedef FAX_LOG_CATEGORYW FAX_LOG_CATEGORY
;
519 typedef PFAX_LOG_CATEGORYW PFAX_LOG_CATEGORY
;
520 typedef FAX_CONTEXT_INFOW FAX_CONTEXT_INFO
;
521 typedef PFAX_CONTEXT_INFOW PFAX_CONTEXT_INFO
;
522 typedef FAX_PRINT_INFOW FAX_PRINT_INFO
;
523 typedef PFAX_PRINT_INFOW PFAX_PRINT_INFO
;
524 typedef PFAX_RECIPIENT_CALLBACKA PFAX_RECIPIENT_CALLBACK
;
525 #define FaxCompleteJobParams FaxCompleteJobParamsW
526 #define FaxConnectFaxServer FaxConnectFaxServerW
527 #define FaxEnableRoutingMethod FaxEnableRoutingMethodW
528 #define FaxEnumGlobalRoutingInfo FaxEnumGlobalRoutingInfoW
529 #define FaxEnumJobs FaxEnumJobsW
530 #define FaxEnumPorts FaxEnumPortsW
531 #define FaxEnumRoutingMethods FaxEnumRoutingMethodsW
532 #define FaxGetConfiguration FaxGetConfigurationW
533 #define FaxGetDeviceStatus FaxGetDeviceStatusW
534 #define FaxGetJob FaxGetJobW
535 #define FaxGetLoggingCategories FaxGetLoggingCategoriesW
536 #define FaxGetPort FaxGetPortW
537 #define FaxGetRoutingInfo FaxGetRoutingInfoW
538 #define FaxSendDocument FaxSendDocumentW
539 #define FaxSendDocumentForBroadcast FaxSendDocumentForBroadcastW
540 #define FaxSetConfiguration FaxSetConfigurationW
541 #define FaxSetGlobalRoutingInfo FaxSetGlobalRoutingInfoW
542 #define FaxSetJob FaxSetJobW
543 #define FaxSetLoggingCategories FaxSetLoggingCategoriesW
544 #define FaxSetPort FaxSetPortW
545 #define FaxSetRoutingInfo FaxSetRoutingInfoW
546 #define FaxStartPrintJob FaxStartPrintJobW
548 typedef FAX_JOB_PARAMA FAX_JOB_PARAM
;
549 typedef PFAX_JOB_PARAMA PFAX_JOB_PARAM
;
550 typedef FAX_COVERAGE_INFOA FAX_COVERAGE_INFO
;
551 typedef PFAX_COVERAGE_INFOA PFAX_COVERAGE_INFO
;
552 typedef FAX_GLOBAL_ROUTING_INFOA FAX_GLOBAL_ROUTING_INFO
;
553 typedef PFAX_GLOBAL_ROUTING_INFOA PFAX_GLOBAL_ROUTING_INFO
;
554 typedef FAX_JOB_ENTRYA FAX_JOB_ENTRY
;
555 typedef PFAX_JOB_ENTRYA PFAX_JOB_ENTRY
;
556 typedef FAX_PORT_INFOA FAX_PORT_INFO
;
557 typedef PFAX_PORT_INFOA PFAX_PORT_INFO
;
558 typedef FAX_ROUTING_METHODA FAX_ROUTING_METHOD
;
559 typedef PFAX_ROUTING_METHODA PFAX_ROUTING_METHOD
;
560 typedef FAX_CONFIGURATIONA FAX_CONFIGURATION
;
561 typedef PFAX_CONFIGURATIONA PFAX_CONFIGURATION
;
562 typedef FAX_DEVICE_STATUSA FAX_DEVICE_STATUS
;
563 typedef PFAX_DEVICE_STATUSA PFAX_DEVICE_STATUS
;
564 typedef FAX_LOG_CATEGORYA FAX_LOG_CATEGORY
;
565 typedef PFAX_LOG_CATEGORYA PFAX_LOG_CATEGORY
;
566 typedef FAX_CONTEXT_INFOA FAX_CONTEXT_INFO
;
567 typedef PFAX_CONTEXT_INFOA PFAX_CONTEXT_INFO
;
568 typedef FAX_PRINT_INFOA FAX_PRINT_INFO
;
569 typedef PFAX_PRINT_INFOA PFAX_PRINT_INFO
;
570 typedef PFAX_RECIPIENT_CALLBACKW PFAX_RECIPIENT_CALLBACK
;
571 #define FaxCompleteJobParams FaxCompleteJobParamsA
572 #define FaxConnectFaxServer FaxConnectFaxServerA
573 #define FaxEnableRoutingMethod FaxEnableRoutingMethodA
574 #define FaxEnumGlobalRoutingInfo FaxEnumGlobalRoutingInfoA
575 #define FaxEnumJobs FaxEnumJobsA
576 #define FaxEnumPorts FaxEnumPortsA
577 #define FaxEnumRoutingMethods FaxEnumRoutingMethodsA
578 #define FaxGetConfiguration FaxGetConfigurationA
579 #define FaxGetDeviceStatus FaxGetDeviceStatusA
580 #define FaxGetJob FaxGetJobA
581 #define FaxGetLoggingCategories FaxGetLoggingCategoriesA
582 #define FaxGetPort FaxGetPortA
583 #define FaxGetRoutingInfo FaxGetRoutingInfoA
584 #define FaxSendDocument FaxSendDocumentA
585 #define FaxSendDocumentForBroadcast FaxSendDocumentForBroadcastA
586 #define FaxSetConfiguration FaxSetConfigurationA
587 #define FaxSetGlobalRoutingInfo FaxSetGlobalRoutingInfoA
588 #define FaxSetJob FaxSetJobA
589 #define FaxSetLoggingCategories FaxSetLoggingCategoriesA
590 #define FaxSetPort FaxSetPortA
591 #define FaxSetRoutingInfo FaxSetRoutingInfoA
592 #define FaxStartPrintJob FaxStartPrintJobA
595 #endif /* _DISABLE_TIDENTS */
597 typedef BOOL (CALLBACK
*PFAX_ROUTING_INSTALLATION_CALLBACKW
)(HANDLE FaxHandle
, LPVOID Context
, LPWSTR MethodName
, LPWSTR FriendlyName
, LPWSTR FunctionName
, LPWSTR Guid
);
598 #define PFAX_ROUTING_INSTALLATION_CALLBACK PFAX_ROUTING_INSTALLATION_CALLBACKW
599 #define FaxRegisterRoutingExtension FaxRegisterRoutingExtensionW
600 #define FaxRegisterServiceProvider FaxRegisterServiceProviderW
602 BOOL WINAPI
FaxAbort(HANDLE FaxHandle
, DWORD JobId
);
603 BOOL WINAPI
FaxAccessCheck(HANDLE FaxHandle
, DWORD AccessMask
);
604 BOOL WINAPI
FaxClose(HANDLE FaxHandle
);
605 BOOL WINAPI
FaxCompleteJobParamsA(PFAX_JOB_PARAMA
*JobParams
, PFAX_COVERAGE_INFOA
*CoverageInfo
);
606 BOOL WINAPI
FaxCompleteJobParamsW(PFAX_JOB_PARAMW
*JobParams
, PFAX_COVERAGE_INFOW
*CoverageInfo
);
607 BOOL WINAPI
FaxConnectFaxServerA(LPCSTR MachineName
, LPHANDLE FaxHandle
);
608 BOOL WINAPI
FaxConnectFaxServerW(LPCWSTR MachineName
, LPHANDLE FaxHandle
);
609 BOOL WINAPI
FaxEnableRoutingMethodA(HANDLE FaxPortHandle
, LPCSTR RoutingGuid
, BOOL Enabled
);
610 BOOL WINAPI
FaxEnableRoutingMethodW(HANDLE FaxPortHandle
, LPCWSTR RoutingGuid
, BOOL Enabled
);
611 BOOL WINAPI
FaxEnumGlobalRoutingInfoA(HANDLE FaxHandle
, PFAX_GLOBAL_ROUTING_INFOA
*RoutingInfo
, LPDWORD MethodsReturned
);
612 BOOL WINAPI
FaxEnumGlobalRoutingInfoW(HANDLE FaxHandle
, PFAX_GLOBAL_ROUTING_INFOW
*RoutingInfo
, LPDWORD MethodsReturned
);
613 BOOL WINAPI
FaxEnumJobsA(HANDLE FaxHandle
, PFAX_JOB_ENTRYA
*JobEntry
, LPDWORD JobsReturned
);
614 BOOL WINAPI
FaxEnumJobsW(HANDLE FaxHandle
, PFAX_JOB_ENTRYW
*JobEntry
, LPDWORD JobsReturned
);
615 BOOL WINAPI
FaxEnumPortsA(HANDLE FaxHandle
, PFAX_PORT_INFOA
*PortInfo
, LPDWORD PortsReturned
);
616 BOOL WINAPI
FaxEnumPortsW(HANDLE FaxHandle
, PFAX_PORT_INFOW
*PortInfo
, LPDWORD PortsReturned
);
617 BOOL WINAPI
FaxEnumRoutingMethodsA(HANDLE FaxPortHandle
, PFAX_ROUTING_METHODA
*RoutingMethod
, LPDWORD MethodsReturned
);
618 BOOL WINAPI
FaxEnumRoutingMethodsW(HANDLE FaxPortHandle
, PFAX_ROUTING_METHODW
*RoutingMethod
, LPDWORD MethodsReturned
);
619 VOID WINAPI
FaxFreeBuffer(LPVOID Buffer
);
620 BOOL WINAPI
FaxGetConfigurationA(HANDLE FaxHandle
, PFAX_CONFIGURATIONA
*FaxConfig
);
621 BOOL WINAPI
FaxGetConfigurationW(HANDLE FaxHandle
, PFAX_CONFIGURATIONW
*FaxConfig
);
622 BOOL WINAPI
FaxGetDeviceStatusA(HANDLE FaxPortHandle
, PFAX_DEVICE_STATUSA
*DeviceStatus
);
623 BOOL WINAPI
FaxGetDeviceStatusW(HANDLE FaxPortHandle
, PFAX_DEVICE_STATUSW
*DeviceStatus
);
624 BOOL WINAPI
FaxGetJobA(HANDLE FaxHandle
, DWORD JobId
, PFAX_JOB_ENTRYA
*JobEntry
);
625 BOOL WINAPI
FaxGetJobW(HANDLE FaxHandle
, DWORD JobId
, PFAX_JOB_ENTRYW
*JobEntry
);
626 BOOL WINAPI
FaxGetLoggingCategoriesA(HANDLE FaxHandle
, PFAX_LOG_CATEGORYA
*Categories
, LPDWORD NumberCategories
);
627 BOOL WINAPI
FaxGetLoggingCategoriesW(HANDLE FaxHandle
, PFAX_LOG_CATEGORYW
*Categories
, LPDWORD NumberCategories
);
628 BOOL WINAPI
FaxGetPageData(HANDLE FaxHandle
, DWORD JobId
, LPBYTE
*Buffer
, LPDWORD BufferSize
, LPDWORD ImageWidth
, LPDWORD ImageHeight
);
629 BOOL WINAPI
FaxGetPortA(HANDLE FaxPortHandle
, PFAX_PORT_INFOA
*PortInfo
);
630 BOOL WINAPI
FaxGetPortW(HANDLE FaxPortHandle
, PFAX_PORT_INFOW
*PortInfo
);
631 BOOL WINAPI
FaxGetRoutingInfoA(HANDLE FaxPortHandle
, LPCSTR RoutingGuid
, LPBYTE
*RoutingInfoBuffer
, LPDWORD RoutingInfoBufferSize
);
632 BOOL WINAPI
FaxGetRoutingInfoW(HANDLE FaxPortHandle
, LPCWSTR RoutingGuid
, LPBYTE
*RoutingInfoBuffer
, LPDWORD RoutingInfoBufferSize
);
633 BOOL WINAPI
FaxInitializeEventQueue(HANDLE FaxHandle
, HANDLE CompletionPort
, ULONG_PTR CompletionKey
, HWND hWnd
, UINT MessageStart
);
634 BOOL WINAPI
FaxOpenPort(HANDLE FaxHandle
, DWORD DeviceId
, DWORD Flags
, LPHANDLE FaxPortHandle
);
635 BOOL WINAPI
FaxPrintCoverPageA(CONST FAX_CONTEXT_INFOA
*FaxContextInfo
, CONST FAX_COVERAGE_INFOA
*CoverPageInfo
);
636 BOOL WINAPI
FaxPrintCoverPageW(CONST FAX_CONTEXT_INFOW
*FaxContextInfo
, CONST FAX_COVERAGE_INFOW
*CoverPageInfo
);
637 BOOL WINAPI
FaxRegisterRoutingExtensionW(HANDLE FaxHandle
, LPCWSTR ExtensionName
, LPCWSTR FriendlyName
, LPCWSTR ImageName
, PFAX_ROUTING_INSTALLATION_CALLBACK CallBack
, LPVOID Context
);
638 BOOL WINAPI
FaxRegisterServiceProviderW(LPCWSTR DeviceProvider
, LPCWSTR FriendlyName
, LPCWSTR ImageName
, LPCWSTR TspName
);
639 BOOL WINAPI
FaxSendDocumentA(HANDLE FaxHandle
, LPCSTR FileName
, PFAX_JOB_PARAMA JobParams
, CONST FAX_COVERAGE_INFOA
*CoverpageInfo
, LPDWORD FaxJobId
);
640 BOOL WINAPI
FaxSendDocumentForBroadcastA(HANDLE FaxHandle
, LPCSTR FileName
, LPDWORD FaxJobId
, PFAX_RECIPIENT_CALLBACKA FaxRecipientCallback
, LPVOID Context
);
641 BOOL WINAPI
FaxSendDocumentForBroadcastW(HANDLE FaxHandle
, LPCWSTR FileName
, LPDWORD FaxJobId
, PFAX_RECIPIENT_CALLBACKW FaxRecipientCallback
, LPVOID Context
);
642 BOOL WINAPI
FaxSendDocumentW(HANDLE FaxHandle
, LPCWSTR FileName
, PFAX_JOB_PARAMW JobParams
, CONST FAX_COVERAGE_INFOW
*CoverpageInfo
, LPDWORD FaxJobId
);
643 BOOL WINAPI
FaxSetConfigurationA(HANDLE FaxHandle
, CONST FAX_CONFIGURATIONA
*FaxConfig
);
644 BOOL WINAPI
FaxSetConfigurationW(HANDLE FaxHandle
, CONST FAX_CONFIGURATIONW
*FaxConfig
);
645 BOOL WINAPI
FaxSetGlobalRoutingInfoA(HANDLE FaxHandle
, CONST FAX_GLOBAL_ROUTING_INFOA
*RoutingInfo
);
646 BOOL WINAPI
FaxSetGlobalRoutingInfoW(HANDLE FaxHandle
, CONST FAX_GLOBAL_ROUTING_INFOW
*RoutingInfo
);
647 BOOL WINAPI
FaxSetJobA(HANDLE FaxHandle
, DWORD JobId
, DWORD Command
, CONST FAX_JOB_ENTRYA
*JobEntry
);
648 BOOL WINAPI
FaxSetJobW(HANDLE FaxHandle
, DWORD JobId
, DWORD Command
, CONST FAX_JOB_ENTRYW
*JobEntry
);
649 BOOL WINAPI
FaxSetLoggingCategoriesA(HANDLE FaxHandle
, CONST FAX_LOG_CATEGORYA
*Categories
, DWORD NumberCategories
);
650 BOOL WINAPI
FaxSetLoggingCategoriesW(HANDLE FaxHandle
, CONST FAX_LOG_CATEGORYW
*Categories
, DWORD NumberCategories
);
651 BOOL WINAPI
FaxSetPortA(HANDLE FaxPortHandle
, CONST FAX_PORT_INFOA
*PortInfo
);
652 BOOL WINAPI
FaxSetPortW(HANDLE FaxPortHandle
, CONST FAX_PORT_INFOW
*PortInfo
);
653 BOOL WINAPI
FaxSetRoutingInfoA(HANDLE FaxPortHandle
, LPCSTR RoutingGuid
, CONST BYTE
*RoutingInfoBuffer
, DWORD RoutingInfoBufferSize
);
654 BOOL WINAPI
FaxSetRoutingInfoW(HANDLE FaxPortHandle
, LPCWSTR RoutingGuid
, CONST BYTE
*RoutingInfoBuffer
, DWORD RoutingInfoBufferSize
);
655 BOOL WINAPI
FaxStartPrintJobA(LPCSTR PrinterName
, CONST FAX_PRINT_INFOA
*PrintInfo
, LPDWORD FaxJobId
, PFAX_CONTEXT_INFOA FaxContextInfo
);
656 BOOL WINAPI
FaxStartPrintJobW(LPCWSTR PrinterName
, CONST FAX_PRINT_INFOW
*PrintInfo
, LPDWORD FaxJobId
, PFAX_CONTEXT_INFOW FaxContextInfo
);
661 #endif /* __WINFAX_H */