java - 如何检查是否有默认打印机 (Windows)?

标签 java .net windows delphi winapi

是否有我可以从应用程序( native 、Java 或 .Net)中使用的 API 或注册表项来检查当前登录的用户是否配置了默认打印机?

更新:非常感谢到目前为止的回答!根据知识库文章 http://support.microsoft.com/kb/156212 , 注册表项(读/写)仅记录到 Windows 2000。较新版本中是否有用于 native 访问的 Win API 方法?

最佳答案

在 .NET 中,这段代码适用于我:

public static string DefaultPrinterName()
{
  string functionReturnValue = null;
  System.Drawing.Printing.PrinterSettings oPS 
    = new System.Drawing.Printing.PrinterSettings();

  try
  {
    functionReturnValue = oPS.PrinterName;
  }
  catch (System.Exception ex)
  {
    functionReturnValue = "";
  }
  finally
  {
    oPS = null;
  }
  return functionReturnValue;
}

来自: http://in.answers.yahoo.com/question/index?qid=20070920032312AAsSaPx

关于java - 如何检查是否有默认打印机 (Windows)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3474471/

相关文章:

JavaEE 网络应用程序 (Tomcat) 和嵌套上下文路径

android - 在 Android 上托管网络服务

windows - 如何在 Windows 上使用 Perl 的默认应用程序打开文件?

windows - 从命令行执行 URL 而无需在 Windows 中打开浏览器

java - 对 netbeans 进行尸检给出 java 版本错误

java - 禁用 StackedXYAreaChart 中的系列 - jfreechart

c# - 动态禁用特定的上下文菜单项

c# - 在 ASP.NET 中使用复选框启用文本框?

Windows 上用于访问 SFTP 站点的 Python 脚本

java - Spring Webflow 2.4.5 多部分/表单数据绑定(bind)问题