C++ 有没有办法限制进程的输出文件数?

C++ 有没有办法限制进程的输出文件数?,c++,winapi,C++,Winapi,我们公司的一个应用程序使用pdfimages(来自xpdf)检查PDF文件中没有文本的某些页面是否由一个图像组成 为此,我们在该页面上运行pdfimages,统计是否只创建了一个、两个或多个或零个输出文件(可以是JPG、PPM、PGM或PPM) 问题是,对于某些PDF文件,我们会得到数百万个14字节的PPM图像,并且必须手动终止该过程 我们知道,通过将流程分配给作业,可以限制流程运行的时间。但如果我们能够控制进程在执行期间最多创建两次新文件,可能会更好 你有做那件事的线索吗 谢谢。此外,除了我的

我们公司的一个应用程序使用
pdfimages
(来自xpdf)检查PDF文件中没有文本的某些页面是否由一个图像组成

为此,我们在该页面上运行pdfimages,统计是否只创建了一个、两个或多个或零个输出文件(可以是JPG、PPM、PGM或PPM)

问题是,对于某些PDF文件,我们会得到数百万个14字节的PPM图像,并且必须手动终止该过程

我们知道,通过将流程分配给作业,可以限制流程运行的时间。但如果我们能够控制进程在执行期间最多创建两次新文件,可能会更好

你有做那件事的线索吗


谢谢。

此外,除了我的“笑话”评论外,您可能还想查看
\u setmaxstdio
,看看这是否有帮助()。

此外,除了我的“笑话”评论外,您可能还想查看
\u setmaxstdio
,看看这是否有帮助().

一种方法是监视目录中的文件创建:-然后监视应用程序可以终止PDF图像提取过程

另一种方法是使用一个简单的ramdisk来限制可以创建的文件数量:您可以修改如下内容


如果您可以设置FAT16文件系统,我认为根目录中的文件限制为128个,其他目录中的文件限制为512个一种方法是监视目录中的文件创建:-然后监视应用程序可以终止PDF图像提取过程

另一种方法是使用一个简单的ramdisk来限制可以创建的文件数量:您可以修改如下内容


如果您可以设置FAT16文件系统,我认为根目录中的文件限制为128个,其他目录中的文件限制为512个使用这些小文件可以快速访问。

C运行时库对一次可以打开的文件数量有512个限制。一种解决方案可能是打开510个临时文件,这些文件不起任何作用,为应用程序留下2个文件。:)哈哈。但是没有,考虑到应用程序创建的文件超过512个,我想它会按顺序关闭和打开它们:-)C运行时库对每次可以打开的文件数量有512个限制。一种解决方案可能是打开510个临时文件,这些文件不起任何作用,为应用程序留下2个文件。:)哈哈。但是没有,考虑到应用程序创建了超过512个文件,我想它会按顺序关闭和打开它们:-)如果它创建了每个文件,然后关闭并重用描述符,这些方法会起作用吗?我看不出有任何理由认为句柄会同时打开。谢谢大家,+1指向另一个有趣的函数。即使在我们的例子中它似乎不适用,但它可能会有更大的用处。如果它创建每个文件,然后关闭并重用描述符,这些方法会起作用吗?我看不出有任何理由认为句柄会同时打开。谢谢大家,+1指向另一个有趣的函数。尽管这在我们的案件中似乎不适用,但它可能会有更大的用处。谢谢你,托尼。我认为看目录是我们做这件事最简单的方法。谢谢你,托尼。我认为看目录是最简单的方法。