VB设置系统默认打印机..doc
文本预览下载声明
如何设置哪些打印机是系统默认打印机
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。如果您发现了错误并希望帮助我们提高机器翻译技术,请完成文章末尾的在线调查。
点击这里察看该文章的英文版: 266767 (/kb/266767/en-us/)
文章编号 : 266767 最后修改 : 2006年8月23日 修订 : 3.3
本文介绍如何以编程方式设置哪些打印机是系统默认打印机。 并非所有应用程序或组件可选择要使用特定打印机。 这使得经常需要更改为系统默认打印机以便应用程序或组件将使用所需打印机。
回到顶端
更多信息
注意 : 此代码更改为整个系统默认打印机。 这样所有应用程序, 没有指定打印机, 甚至当前运行, 的应用程序使用此相同默认。 由于这个原因, 可能要拥有您记得以前默认, 然后将其打印作业完成时返回代码。以下代码示例提供一种来确定哪些打印机可, 并以指定一个作为系统默认打印机。
回到顶端
分步示例
1. VisualBasic 中启动新标准 EXE 工程。 默认情况下创建 Form 1。 2. 向项目添加一个新模块并插入以下代码:
Public Const HWND_BROADCAST = HFFFF
Public Const WM_WININICHANGE = H1A
constants for DEVMODE structure
Public Const CCHDEVICENAME = 32
Public Const CCHFORMNAME = 32
constants for DesiredAccess member of PRINTER_DEFAULTS
Public Const STANDARD_RIGHTS_REQUIRED = HF0000
Public Const PRINTER_ACCESS_ADMINISTER = H4
Public Const PRINTER_ACCESS_USE = H8
Public Const PRINTER_ALL_ACCESS = (STANDARD_RIGHTS_REQUIRED Or _
PRINTER_ACCESS_ADMINISTER Or PRINTER_ACCESS_USE)
constant that goes into PRINTER_INFO_5 Attributes member
to set it as default
Public Const PRINTER_ATTRIBUTE_DEFAULT = 4
Constant for OSVERSIONINFO.dwPlatformId
Public Const VER_PLATFORM_WIN32_WINDOWS = 1
Public Type OSVERSIONINFO
dwOSVersionInfoSize As Long
dwMajorVersion As Long
dwMinorVersion As Long
dwBuildNumber As Long
dwPlatformId As Long
szCSDVersion As String * 128
End Type
Public Type DEVMODE
dmDeviceName As String * CCHDEVICENAME
dmSpecVersion As Integer
dmDriverVersion As Integer
dmSize As Integer
dmDriverExtra As Integer
dmFields As Long
dmOrientation As Integer
dmPaperSize As Integer
dmPaperLength As Integer
dmPaperWidth As Integer
dmScale As Integer
dmCopies As Integer
dmDefaultSource As Integer
dmPrintQuality A
显示全部