FaxInitializeEventQueueProc and retries

N

Nicolas Caron

Hi,

I am using FaxInitializeEventQueueProc and GetQueuedCompletionStatus to
monitor a serie of Faxes my application sends.

Works fine and I get any status change to my jobs but... is there a way
to know when a job exceeded it's maximum number of retries? I don't
want my application to generate a report as long as the job is still
waiting for retries.

Thanks
NC
 
A

Alex Feinman [MVP]

Use FaxGetJob(hFax, FAX_EVENT.JobId) to get FAX_JOB_ENTRY
and check for FAX_JOB_ENTRY.QueueStatus = fjsRETRIES_EXCEEDED
 
N

Nicolas Caron

Alex said:
Use FaxGetJob(hFax, FAX_EVENT.JobId) to get FAX_JOB_ENTRY
and check for FAX_JOB_ENTRY.QueueStatus = fjsRETRIES_EXCEEDED

Ok... this is getting a bit annoying. About a week ago I posted asking
how to properly get status updates for my faxes I send so my
application can report whenever a fax fails or complete successfully
(my post was titled Change in API in Windows 2003 server). At the time
I ws told I should use FaxInitializeQueuedEvent and drop FaxGetJob...

So basically what you tell me now is that when I get a status update
through the Fax Event I should verify using FaxGetJob if the maximum
number of retries has been exceeded?

Is there, somewhere hidden, a single API I can use to get any status
update to report the faxes status to my user ONLY when the job is no
longer being handled by the Windows Fax service (it's complete, it
fails and won't retry anymore or it has been canceled) or am I doomed
to use 2 different APIs??
 
A

Alex Feinman [MVP]

I did not mean to annoy you, but rather tried to answer you question to the
best of my knowledge. Personally I am using FaxComEx API to monitor the job
status and I get status fjsRETRIES_EXCEEDED in the JobStatusChange
notification. Fax events are service events not job status events.

In the previous thread that you refer to you have been given two advises:
1) Use FaxComEx (that's what I do and it works perfectly)
2) Use FaxInitializeQueuedEvent. My understanding is that calling FaxGetJob
at that point is valid since the job has not been moved from the ougoing
queue yet.
 
N

Nicolas Caron

Alex said:
I did not mean to annoy you, but rather tried to answer you question
to the best of my knowledge. Personally I am using FaxComEx API to
monitor the job status and I get status fjsRETRIES_EXCEEDED in the
JobStatusChange notification. Fax events are service events not job
status events.

In the previous thread that you refer to you have been given two
advises: 1) Use FaxComEx (that's what I do and it works perfectly)
2) Use FaxInitializeQueuedEvent. My understanding is that calling
FaxGetJob at that point is valid since the job has not been moved
from the ougoing queue yet.

Sorry I didn't mean that YOU were annoying me... just the whole
situation :)

Ok so basically I could use FaxInitializeQueueEvent to monitor my fax
queue and whenever I get an even, verify the status of that job using
the JobId specified in the FAX_EVENT structure with FaxGetJob to verify
if the status is set to RETRIES_EXCEEDED? So should that work? Just
want to make sure I get this right this time...
 
A

Alex Feinman [MVP]

Nicolas Caron said:
Sorry I didn't mean that YOU were annoying me... just the whole
situation :)

Ok so basically I could use FaxInitializeQueueEvent to monitor my fax
queue and whenever I get an even, verify the status of that job using
the JobId specified in the FAX_EVENT structure with FaxGetJob to verify
if the status is set to RETRIES_EXCEEDED? So should that work? Just
want to make sure I get this right this time...

Supposedly. I have to admit I havn't tried it since like I said I am using
FaxComEx. But you seem to have everything in plkace already to try it out.
Let me know.
 
N

Nicolas Caron

Alex said:
question >> to the best of my knowledge. Personally I am using
FaxComEx API to >> monitor the job status and I get status
fjsRETRIES_EXCEEDED in the >> JobStatusChange notification. Fax
events are service events not job >> status events.

Supposedly. I have to admit I havn't tried it since like I said I am
using FaxComEx. But you seem to have everything in plkace already to
try it out. Let me know.

Just for the record, I tried what I explained in my previous post and
it works fine.
 
N

Nicolas Caron

Alex said:
question >> to the best of my knowledge. Personally I am using
FaxComEx API to >> monitor the job status and I get status
fjsRETRIES_EXCEEDED in the >> JobStatusChange notification. Fax
events are service events not job >> status events.

Supposedly. I have to admit I havn't tried it since like I said I am
using FaxComEx. But you seem to have everything in plkace already to
try it out. Let me know.

Ok turns out some of my customers are having problems now that they've
been using the software for a while. I am looking into switching to the
more recent COM API for faxing, but most of what I see that would be
really helpful for reporting job status is in FaxComEx. Problem is I
have many customers that are still on Windows 2000 and can't force them
to switch to XP. Is there any way to use the FaxComEx functionality on
Windows 2K ?
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top