微信公众号

支付宝红包

您当前的位置:主页 > 编程交流 > > 正文编程交流

Csharp 编程-一键清除打印任务

发布时间:2018-12-06 丨 阅读次数:

Csharp 编程-一键清除打印任务

? ? ? 我们经常会遇到打印机连接故障,点了打印,但是任务卡在里面,打印不了,右键去删除也删不了,还是一直在里面。那怎么解决呢。

Csharp 编程-一键清除打印任务

?

? ? ? 我们来看下手动处理方式,首先我们要关闭Print Spooler服务,然后进入C:WindowsSystem32spoolPRINTERS,删除掉里面所有问题,然后在开启服务就可以了。

Csharp 编程-一键清除打印任务

?

? ? ? 我们在c#里面把这个步骤完成,就可以实现一键删除了。

? ? ? 首先建两个方法,一个开启服务,一个关闭服务。

//启动服务

private static bool ServiceStart(string serviceName)

{

try

{

ServiceController service = new ServiceController(serviceName);

if (service.Status == ServiceControllerStatus.Running)

{

return true;

}

else

{

TimeSpan timeout = TimeSpan.FromMilliseconds(1000 * 10);

service.Start();

service.WaitForStatus(ServiceControllerStatus.Running, timeout);

}

}

catch

{

return false;

}

return true;

}

//停止服务

private bool StopService(string serviseName)

{

try

{

ServiceController service = new ServiceController(serviseName);

if (service.Status == ServiceControllerStatus.Stopped)

{

return true;

}

else

{

TimeSpan timeout = TimeSpan.FromMilliseconds(1000 * 10);

service.Stop();

service.WaitForStatus(ServiceControllerStatus.Stopped, timeout);

}

}

catch

{

return false;

}

return true;

}

方法写完了,在就是使用,给一个button写入。

private void button1_Click(object sender, EventArgs e)

{

try

{

if (StopService("Spooler"))

{

DirectoryInfo dir = new DirectoryInfo(@"C:WindowsSystem32spoolPRINTERS");

FileSystemInfo[] fileinfo = dir.GetFileSystemInfos(); //返回目录中所有文件和子目录

foreach (FileSystemInfo i in fileinfo)

{

if (i is DirectoryInfo) //判断是否文件夹

{

DirectoryInfo subdir = new DirectoryInfo(i.FullName);

subdir.Delete(true); //删除子目录和文件

}

else

{

File.Delete(i.FullName); //删除指定文件

listBox1.Items.Add(i.FullName);

}

}

}

else

{

MessageBox.Show("应用失败");

return;

}

if (ServiceStart("Spooler"))

{

}

else

{

MessageBox.Show("应用失败");

return;

}

MessageBox.Show("删除完成!");

}

catch (Exception)

{

MessageBox.Show("删除失败,请手动操作!");

}

}

? ? ? 至此,打印机任务就全部删除了,这个方法也可以应用于windows更新失败的解决方案,我也会持续更新。

?备案号:鄂ICP备17019366号
技术支持:yabo亚博vip体育官网阮
公众号

网站二维码