检测 Kofax 是否启动了自定义模块或用户
detect if Kofax launched custom module or User
启动自定义模块后,我可以使用
if (Environment.UserInteractive)
{
// Run as WinForms app
}
else
{
// Run as service
}
在后台服务和 WinForms 应用程序之间切换。但我也可以在不启动 Kofax 的情况下 运行 .exe 文件。
是否可以检查 Kofax 是否启动了该模块?我的示例代码看起来像
if (Environment.UserInteractive)
{
// Run as WinForms app
if (Application.LaunchedByKofax)
{
// Do something additional
}
}
else
{
// Run as service
}
Kofax Capture 启动您的自定义模块的唯一情况是当用户尝试从 Batch Manager 处理批次,并且该批次当前在您的自定义模块的队列中时。如果您指的不是那个,那么您需要澄清您的问题。
发生这种情况时,为您的自定义模块注册的路径将使用其他参数调用,其中最值得注意的是 -B###,其中 ### 是十进制批次 ID。有关此内容的更多详细信息,请参阅 Kofax 知识库文章 1713,该文章较旧但仍适用于当前版本。
因此您可以使用这样的函数来检查预期参数。
public bool LaunchedFromBatchManager()
{
var args = Environment.GetCommandLineArgs();
//args[0] will contain the path to your exe, subsquent items are the actual args
if (args.Count() > 1)
{
// When a user tries to process a batch from batch manager,
// it launches the module with -B###, where ### is the decimal batch ID
// see: http://knowledgebase.kofax.com/faqsearch/results.aspx?QAID=1713
if (args[1].StartsWith("-B"))
{
return true;
}
}
return false;
}
启动自定义模块后,我可以使用
if (Environment.UserInteractive)
{
// Run as WinForms app
}
else
{
// Run as service
}
在后台服务和 WinForms 应用程序之间切换。但我也可以在不启动 Kofax 的情况下 运行 .exe 文件。
是否可以检查 Kofax 是否启动了该模块?我的示例代码看起来像
if (Environment.UserInteractive)
{
// Run as WinForms app
if (Application.LaunchedByKofax)
{
// Do something additional
}
}
else
{
// Run as service
}
Kofax Capture 启动您的自定义模块的唯一情况是当用户尝试从 Batch Manager 处理批次,并且该批次当前在您的自定义模块的队列中时。如果您指的不是那个,那么您需要澄清您的问题。
发生这种情况时,为您的自定义模块注册的路径将使用其他参数调用,其中最值得注意的是 -B###,其中 ### 是十进制批次 ID。有关此内容的更多详细信息,请参阅 Kofax 知识库文章 1713,该文章较旧但仍适用于当前版本。
因此您可以使用这样的函数来检查预期参数。
public bool LaunchedFromBatchManager()
{
var args = Environment.GetCommandLineArgs();
//args[0] will contain the path to your exe, subsquent items are the actual args
if (args.Count() > 1)
{
// When a user tries to process a batch from batch manager,
// it launches the module with -B###, where ### is the decimal batch ID
// see: http://knowledgebase.kofax.com/faqsearch/results.aspx?QAID=1713
if (args[1].StartsWith("-B"))
{
return true;
}
}
return false;
}