Imports System.Drawing.Printing
Imports
System.Runtime.InteropServices

Public Class Page
   
<Runtime.InteropServices.DllImport("winspool.Drv",
EntryPoint:="OpenPrinterW", _
      SetLastError:=True,
CharSet:=CharSet.Unicode, _
      ExactSpelling:=True,
CallingConvention:=CallingConvention.StdCall)> _
   Public Shared Function
OpenPrinter(ByVal src As String, ByRef hPrinter As IntPtr, ByVal pd As Long) As
Boolean
    End Function

<System.Runtime.InteropServices.DllImportAttribute("winspool.drv",
SetLastError:=True)> _
    Public Shared Function ClosePrinter(ByVal
phPrinter As IntPtr) As Integer
    End Function

<DllImport("winspool.drv")> _
    Public Shared Function
SetPrinter(ByVal hPrinter As IntPtr, ByVal level As Integer, ByVal lpBytes As
IntPtr, ByVal command As Integer) As Boolean
    End Function

Public Shared Function Setting(ByVal PageName As String) As Boolean
       
Try
            Dim printerSettings As PrinterSettings
            Dim
document As New PrintDocument()

printerSettings =
document.PrinterSettings

Dim hPrinter As IntPtr
           
OpenPrinter(printerSettings.PrinterName, hPrinter, 0)

Dim p
As PaperSize = Nothing
            Dim ps As PaperSize
            For
Each ps In document.PrinterSettings.PaperSizes
                If
ps.PaperName.Equals(PageName) Then
                    p =
ps
                End If
            Next
           
document.DefaultPageSettings.PaperSize = p

Dim hDevMode As
IntPtr =
printerSettings.GetHdevmode(document.DefaultPageSettings)
            Dim ret
As Boolean = SetPrinter(hPrinter, 9, hDevMode, 0)
           
ClosePrinter(hPrinter)
            Return True
        Catch ex As
Exception

End Try

End Function
End Class

最新文章

  1. 导入aar文件出错
  2. 小结 javascript中的类型检测
  3. 【Hibernate 6】常用的hql语句以及N+1问题
  4. Metadata Lock原理3
  5. 使用MWC四轴起飞侧翻解决方法
  6. IE浏览器下&lt;A&gt;标签不能显示背景图片
  7. 【Zabbix】 ZBX的豆知识
  8. ●BZOJ 1969 [Ahoi2005]LANE 航线规划
  9. Python ftplib模块
  10. nginx设置默认server
  11. ElasticSearch - 信息聚合系列之聚合过滤
  12. git 入门教程之 git 私服搭建教程
  13. python(61):str 和 bytes 转换
  14. redis缓存服务器集群搭建
  15. springboot 前后端分离开发 从零到整(二、邮箱注册)
  16. [你必须知道的.NET]第十八回:对象创建始末(上)
  17. Hadoop源码分析之读文件时NameNode和DataNode的处理过程
  18. ASP.NET MVC CheckBoxFor的int to bool
  19. nginx error_page
  20. .Net使用程序发送邮件时的问题

热门文章

  1. 使用方法拦截机制在不修改原逻辑基础上为 spring MVC 工程添加 Redis 缓存
  2. APP的六种loading加载样式,全在这...
  3. Dlib——C++机器学习库,有传统机器学习的,也有深度学习的
  4. gdb调试libtool封装的可执行文件
  5. XML——DTD
  6. RALL资源获取初始化,删除器
  7. 未能加载文件或程序集“NPOI”或它的某一个依赖项
  8. 《DSP using MATLAB》Problem 2.16
  9. Brackets编辑器使用
  10. Mysql 创建外键 1005 err 150