Как распечатать тестовую страницу по умолчанию ПринтерКак распечатать тестовую страницу по умолчанию?
используя код C# Winform Code?
благодарственное-х заранее
Как распечатать тестовую страницу по умолчанию ПринтерКак распечатать тестовую страницу по умолчанию?
используя код C# Winform Code?
благодарственное-х заранее
Использование WMI, в частности, PrintTestPage метод Win32_Printer класса.
Смотрите эту статью MSDN о том, как выполнить метод WMI из C#: How To: Execute a Method
Как сказал HO1 WMI может вместить вас:
ManagementClass processClass = new ManagementClass("Win32_Printer");
ManagementBaseObject outP = processClass.InvokeMethod("PrintTestPage", null);
if (Convert.ToUInt32(outP["ReturnValue"]) != 0)
{
MessageBox.Show("Failed to print test page.");
}
Всякий раз, когда вы звоните печать на PrintDocument без указания принтера он будет, конечно, использовать по умолчанию:
PrintDocument doc = new PrintDocument();
doc.Print(); // will print a blank page
Для создания встроенной тестовой страницы Windows, вы можете также использовать п/ссылаться на PrintUI.dl л. Вот простой класс, который позволяет вам сделать это:
public static class PrintTestPageHelper
{
[DllImport("printui.dll", SetLastError = true, CharSet = CharSet.Unicode)]
private static extern void PrintUIEntryW(IntPtr hwnd,
IntPtr hinst, string lpszCmdLine, int nCmdShow);
/// <summary>
/// Print a Windows test page.
/// </summary>
/// <param name="printerName">
/// Format: \\Server\printer name, for example:
/// \\myserver\sap3
/// </param>
public static void Print(string printerName)
{
var printParams = string.Format(@"/k /n{0}", printerName);
PrintUIEntryW(IntPtr.Zero, IntPtr.Zero, printParams, 0);
}
}
public class Program
{
static void Main(string[] args)
{
PrintTestPageHelper.Print(@"\\printserver.code4life.com\sap3");
Console.WriteLine("Press enter to exit.");
Console.ReadLine();
}
}
Нажмите кнопку «Печать тестовой страницы» в диалоговом окне драйвера принтера. Почему на Земле вы хотели бы написать код C# для этого? –
@HansPassant, потому что если вы хотите самостоятельно управлять принтером и хотите дать пользователю возможность напрямую их протестировать. – BendEg