使用Windows传真服务,我尝试从Windows传真控制台取消传真。根据这个worthless documentation,我需要传入一个值JC_Delete
,这似乎是一些枚举,但是,文档没有遗漏它是什么或如何得到它。
我在最后一句中发现另一个MSDN article说明这些JC
值只是用户定义的常量。最后,我发现forum post声明它只是C ++头文件中的枚举,并且Microsoft的人显示了包含以下内容的枚举:
JC_UNKNOWN = 0
JC_DELETE = 1
JC_PAUSE = 2
JC_RESUME = 3
JC_RESTART = JC_RESUME
我只是尝试插入数字,0或1,因为该方法调用了一个int然后我收到了一个异常
COM错误: 句柄无效。 (HRESULT异常:0x80070006(E_HANDLE))
这是我的一些代码。我能够正确地获取FaxJob对象。它只是调用轰炸的SetStatus()方法。
var job = this.getFaxJobsInQueue().Where(j => j.JobId == JobId).Single();
job.SetStatus(1);
答案 0 :(得分:0)
精氨酸!!发现问题了!这很简单!我忘了连接传真机。显然这就是the handle is invalid
所表明的。我的问题在于返回所有连接和断开连接的作业的方法。一旦我有了FaxJob对象,我就想再次连接。这是我更新的代码:
var job = this.getFaxJobsInQueue().Where(j => j.JobId == JobId).Single();
this.objFaxServer.Connect(faxServerConnectionString);
job.SetStatus(1);
this.objFaxServer.Disconnect();