批处理类正在使用自定义模块,无法将其删除

时间:2019-05-13 14:16:33

标签: kofax

我想从Kofax管理模块中删除我的自定义模块,但由于出现以下错误而无法删除

enter image description here

多次使用该模块会增加那里列出的批次类的数量。但是只有一个批处理类,所以不能。

我从批处理类队列中删除了该模块,停止了所有后台服务,并且没有正在运行的表单应用程序。删除此模块的唯一方法是导出批处理类,在管理模块中将其删除,删除自定义模块,然后重新导入批处理类。

也许我没有正确退出应用程序?

我的会话管理:

    public void LoginToRuntimeSession()
    {
        login = new Login();
        login.EnableSecurityBoost = true;
        login.Login();
        login.ApplicationName = Resources.CUSTOM_MODULE_ID;
        login.Version = "1.0";
        login.ValidateUser($"{Resources.CUSTOM_MODULE_ID}.exe", false);

        session = login.RuntimeSession;
    }

    public void Logout()
    {
        session.Dispose();
        login.Logout();
    }

我用此代码获得了一个新的有效批次

    public IBatch GetNextBatch()
    {
        return session.NextBatchGet(login.ProcessID);
    }

这是我在轮询新批次后处理批处理的方式

    public void ProcessBatch(IBatch batch)
    {
        // ... IACDataElement stuff            

        batch.BatchClose(KfxDbState.KfxDbBatchReady, KfxDbQueue.KfxDbQueueNext, 0, "");
    }

任何想法如何解决此“错误”?请让我知道是否需要更多信息!

2 个答案:

答案 0 :(得分:1)

您看到的消息仅是指“管理”模块中的配置。因此,它与模块在运行或关闭时实际执行的操作无关(代码中的任何问题都不会导致此问题)。

如果使用的是Kofax Capture 11,则批处理类的先前发布的版本仍保留在系统中,因此这些可能仍算作对该模块的引用。如果转到“发布”对话框窗口,则可以单击“版本...”按钮以查看和删除较旧的版本。删除所有仍在使用的旧版本后,请尝试再次删除该模块。

此外,您可以浏览批处理类属性,以确保未在其他设置之一中设置此模块,例如“文件夹”选项卡上的用于启动文件夹的模块,或用于启动“部分批处理导出”的模块。在“高级”标签上。

如果这些建议都不起作用,则您可能需要与Kofax技术支持部门联系。他们或您可以做的一件事是打开导出的批处理类cab文件中的admin.xml文件,然后查看在何处找到您的模块ID。这将为找出仍在引用该模块的内容提供上下文。

答案 1 :(得分:0)

所以我终于开始工作了。正如Stephen Klancher提到的那样,我启动了管理模块并删除了所有以前的版本。转到

  

主页=>版本=>不保留批处理类版本

这样做之后,我能够删除该模块。