C# TiffCP过程赢得';关不上
我创建了一个windows服务项目,该项目将使用TiffCP exe将找到的任何tiff文件拆分为多个tiff文件。我正在使用网站上给出的代码作为示例:C# TiffCP过程赢得';关不上,c#,libtiff,libtiff.net,C#,Libtiff,Libtiff.net,我创建了一个windows服务项目,该项目将使用TiffCP exe将找到的任何tiff文件拆分为多个tiff文件。我正在使用网站上给出的代码作为示例: public static class SplitTiffImage { public static void Main() { string[] arguments = { @"Sample Data\multipage.tif,1", "Spli
public static class SplitTiffImage
{
public static void Main()
{
string[] arguments =
{
@"Sample Data\multipage.tif,1",
"SplitTiffImage_2ndPage.tif"
};
TiffCP.Program.Main(arguments);
Process.Start("SplitTiffImage_2ndPage.tif");
}
}
这将按预期工作并分割文件。但是,创建了一个进程(MSPVIEW.EXE),我无法访问该文件,因为它正在另一个程序中编辑。我必须手动终止进程才能访问它。我也尝试过将流程创建为变量,然后尝试关闭或终止它,但这似乎也不起作用。有什么想法吗?谢谢
编辑:我在再次访问进程之前,以及当服务停止时,我已经输入了这段代码,它似乎起到了作用。这很有效,但我想知道是否有更好的方法
Process[] process = Process.GetProcessesByName("MSPVIEW");
if (process.Length > 0)
{
foreach (var p in process)
{
p.Kill();
}
}
移除
Process.Start("SplitTiffImage_2ndPage.tif");
从上面的代码
该行在默认查看器中打开输出。在您的情况下,它是MicrosoftOfficeDocumentImaging(MSPVIEW.EXE)。很明显,您不需要在查看器中打开输出。我假设分割图像时需要这样做,但我发现情况并非如此。很好,谢谢你的帮助。