FaxJob.SetStatus方法的枚举值

时间:2013-07-08 22:34:27

标签: c# com

使用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);

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();