C# 在Mono/Linux上是否有与IFilter等效的版本?

C# 在Mono/Linux上是否有与IFilter等效的版本?,c#,.net,windows,mono,ifilter,C#,.net,Windows,Mono,Ifilter,我正在将一个应用程序从.NET/Windows转换为mono/linux,但找不到有关iFilter的任何信息。我知道Microsoft IFilter for Office、Adobe和FoxIt IFilter for PDF,但不知道它们是否适用于Linux和/或Mono,或者是否有功能等效的东西(用于从专有表单提取纯文本)。不确定这是否是您正在使用的,但根据MSDNIFilter(与索引服务相关)是过时的。因此,如果它是在Mono中重新实现的,我会感到惊讶 也就是说,许多.NET程序集可

我正在将一个应用程序从.NET/Windows转换为mono/linux,但找不到有关iFilter的任何信息。我知道Microsoft IFilter for Office、Adobe和FoxIt IFilter for PDF,但不知道它们是否适用于Linux和/或Mono,或者是否有功能等效的东西(用于从专有表单提取纯文本)。

不确定这是否是您正在使用的,但根据MSDN
IFilter
(与索引服务相关)是过时的。因此,如果它是在Mono中重新实现的,我会感到惊讶

也就是说,许多.NET程序集可以在不重新编译的情况下放入Mono应用程序中。虽然第三方DLL的情况似乎比Microsoft的DLL更可能出现这种情况,但值得一试,看看这是否适用于您的情况


不确定这是否是您正在使用的,但根据MSDN
IFilter
(与索引服务相关)已过时。因此,如果它在Mono中重新实现,我会感到惊讶

也就是说,许多.NET程序集可以在不重新编译的情况下放入Mono应用程序中。虽然第三方DLL的情况似乎比Microsoft的DLL更可能出现这种情况,但值得一试,看看这是否适用于您的情况


据我所知,IFiler技术仍在最近的应用中使用。其原始设计(大约1996年或之前)这些是用C或C++编写的COM对象。过去几年中可用的大多数过滤器都不能在64位上工作。如果你正在Windows之外构建一个应用程序,你可能需要创建加载和调用IfILTER的代码。 任何想要使用IFilter的实现都需要有一些接口来加载和调用内存中的IFilter,将其指向一个文件并将其踢出以读取内容,然后再踢几次以从内存缓冲区中提取文本结果。使用IFilter的现代实现使用更高级的内存保护来在泄漏时刷新内存发生,在C代码中并不少见…一些示例(大约2003年或2005年)可以在internet上找到,只要您尊重旧式界面,它们应该可以工作


希望这能有所帮助。

据我所知,IFiler技术仍在最近的应用中使用。在其原始设计中(大约1996年或之前)这些是用C或C++编写的COM对象。过去几年中可用的大多数过滤器都不能在64位上工作。如果你正在Windows之外构建一个应用程序,你可能需要创建加载和调用IfILTER的代码。 任何想要使用IFilter的实现都需要有一些接口来加载和调用内存中的IFilter,将其指向一个文件并将其踢出以读取内容,然后再踢几次以从内存缓冲区中提取文本结果。使用IFilter的现代实现使用更高级的内存保护来在泄漏时刷新内存发生,在C代码中并不少见…一些示例(大约2003年或2005年)可以在internet上找到,只要您尊重旧式界面,它们应该可以工作


希望这有帮助。

IFilter是本机Windows API,而不是.NET API


在Linux上,您可以使用搜索索引器(如Beagle)中的过滤器。

如果过滤器是本机Windows API,而不是.NET API


在Linux上,您可以使用搜索索引器(如Beagle)中的过滤器。

这只是过时的索引服务。Windows search的替代品仍然使用IFilter:这只是过时的索引服务。Windows search的替代品仍然使用IFilter:我实际上是想在Mono中从pdf/doc/rtf中提取纯文本,don“我不想依赖windows特定的API。我可以使用其他方法吗?我实际上希望在Mono中从pdf/doc/rtf中提取纯文本,但我不想依赖windows特定的API。我可以使用其他方法吗?”?