C# 如何打印任意文件?

C# 如何打印任意文件?,c#,wpf,printing,C#,Wpf,Printing,我很难找到这方面的信息,我在MSDN/etc上找到的所有文档都是关于创建XPS文档并将其发送到打印机的 我有一个接收文件的网络服务,我只想把它们发送到打印机。这些文件不是特定的类型-有时是Word文档,有时是PDF,有时是照片。没有任何方法可以将任意文件发送到打印机吗 顺便说一句,这是一个WPF库 编辑: 为了进一步澄清,我不知道它是什么类型的文件-它只是一个二进制流键控到一个令牌。shell解决方案的问题在于,它依赖文件扩展名来确定如何打印文件,如果您试图传递无扩展名的文件,它将给出一个错误。

我很难找到这方面的信息,我在MSDN/etc上找到的所有文档都是关于创建XPS文档并将其发送到打印机的

我有一个接收文件的网络服务,我只想把它们发送到打印机。这些文件不是特定的类型-有时是Word文档,有时是PDF,有时是照片。没有任何方法可以将任意文件发送到打印机吗

顺便说一句,这是一个WPF库

编辑:


为了进一步澄清,我不知道它是什么类型的文件-它只是一个二进制流键控到一个令牌。shell解决方案的问题在于,它依赖文件扩展名来确定如何打印文件,如果您试图传递无扩展名的文件,它将给出一个错误。

Chuck Savage为此写了一篇漂亮的文章:

/// <summary>
/// Print the file
/// </summary>
/// <param name="value"></param>
public static void Print(this FileInfo value)
{
    if (!value.Exists)
        throw new FileNotFoundException("File doesn't exist");
    Process p = new Process();
    p.StartInfo.FileName = value.FullName;
    p.StartInfo.Verb = "Print";
    p.Start();
}