⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 15035.html

📁 VB技巧问答10000例 VB技巧问答10000例
💻 HTML
字号:
<html>
  <head>
    <title>请问 改变预设印表机后, 无法再恢复原预设印表机 ?</title>
  </head>
  <body bgcolor="#FFFFFF" vlink="#808080">
    <center>
      <h1>请问 改变预设印表机后, 无法再恢复原预设印表机 ?</h1>
    </center>
<hr size=7 width=75%>

<hr size=7 width=75%><p>
Posted by <a href="mailto:tim6887@ms3.hinet.net">Bill</a> on June 30, 1999 at 18:42:26:<p>
<br>请问 改变预设印表机后,若执行 PaperSize ,Height,Width 等 printer 属性后<br>,则无法再恢复原预设印表机, 为何? ,如何解决 ?<p><br>Private Declare Function GetProfileString Lib "kernel32" Alias _<br>        "GetProfileStringA" (ByVal lpAppName As String, ByVal lpKeyName As _<br>        String, ByVal lpDefault As String, ByVal lpReturnedString As String, _<br>        ByVal nSize As Long) As Long<p>Private Declare Function WriteProfileString Lib "kernel32" Alias _<br>        "WriteProfileStringA" (ByVal lpszSection As String, ByVal lpszKeyName _<br>        As String, ByVal lpszString As String) As Long<p>Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" _<br>       (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, _<br>       lParam As Any) As Long<p>'--------------------------------------------<br>Private Sub Command1_Click()<p>Const HWND_BROADCAST = &HFFFF&<br>Const WM_WININICHANGE = &H1A<br>Dim S As String<br>Dim length As Long<br>Dim hKey As Long<br>Dim PrinterName As String<p>Dim OldPrinter As String<br>Dim X As Printer<br>Dim z(5) As String<br>Dim i As Integer<br>Dim TempPrint As String<p><br>i = 0<br>For Each X In Printers<br>   z(i) = X.DeviceName<br>   i = i + 1<br>Next<p>'设定一欲改变之印表机明称<br>PrinterName = z(1)<p>'取得原先预设之印表机<br>OldPrinter = Printer.DeviceName<p>'修改预设印表机<br>S = String(80, Chr(0))<br>length = GetProfileString("devices", PrinterName, "", S, Len(S))<br>S = Left(S, length)<br>Call WriteProfileString("windows", "device", PrinterName & "," & S)<br>Call SendMessage(HWND_BROADCAST, WM_WININICHANGE, &H7FFF&, ByVal "windows")<p>'取得改变后之印表机名称<br>TempPrint = Printer.DeviceName<p>'随意设定下列三项属性<br>'**************************<br>Printer.PaperSize = 256<br>Printer.Height = 1400<br>Printer.Width = 10000<br>'************************<p>'修改回原先预设印表机<br>PrinterName = OldPrinter<p>S = String(80, Chr(0))<br>length = GetProfileString("devices", PrinterName, "", S, Len(S))<br>S = Left(S, length)<br>Call WriteProfileString("windows", "device", PrinterName & "," & S)<br>Call SendMessage(HWND_BROADCAST, WM_WININICHANGE, &H7FFF&, ByVal "windows")<p>'取得改变后之印表机名称<br>TempPrint = Printer.DeviceName<p>End Sub<br>
<br>
<br><hr size=7 width=75%><p>
<a name="followups">Follow Ups:</a><br>
<ul><!--insert: 15035-->
</ul><!--end: 15035-->
<br><hr size=7 width=75%><p>

</body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -