Visual Basic 中学校 掲示板 投稿の管理
タグのない投稿を抽出
統計
RSS
Visual Basic 中学校
投稿一覧
VB2010EXでドットプリンター
この投稿へのリンク
https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=25950#CommentId68524
この投稿の削除
削除パスワード
削除する
コメント本文
投稿者
hori
 (社会人)
投稿日時
2015/11/17 15:10:31
MSのサンプルの「SendBytesToPrinter」の部分を
Public Shared Function SendBytesToPrinter(ByVal szPrinterName As String, ByVal pBytes As IntPtr, ByVal dwCount As Int32) As Boolean
Dim hPrinter As IntPtr ' The printer handle.
Dim dwError As Int32 ' Last error - in case there was trouble.
Dim di As DOCINFOW ' Describes your document (name, port, data type).
Dim dwWritten As Int32 ' The number of bytes written by WritePrinter().
Dim bSuccess As Boolean ' Your success code.
' Set up the DOCINFO structure.
With di
.pDocName = "My Visual Basic .NET RAW Document"
.pDataType = "RAW"
End With
' Assume failure unless you specifically succeed.
bSuccess = False
If OpenPrinter(szPrinterName, hPrinter, 0) Then
If StartDocPrinter(hPrinter, 1, di) Then
If StartPagePrinter(hPrinter) Then
' Write your printer-specific bytes to the printer.
bSuccess = WritePrinter(hPrinter, pBytes, dwCount, dwWritten)
EndPagePrinter(hPrinter)
End If
EndDocPrinter(hPrinter)
End If
ClosePrinter(hPrinter)
End If
' If you did not succeed, GetLastError may give more information
' about why not.
If bSuccess = False Then
dwError = Marshal.GetLastWin32Error()
Else
Msgbox("000")
End If
Return bSuccess
End Function ' SendBytesToPrinter()
にして Button2 をクリックするとメッセージボックスに「000」が表示される状態です。
http://www.ne.jp/asahi/fukano/yoshio/lprintbs.html
を見つけ、同じNECのプリンターなので
これを参考にできるのではないかと思い今やっているところです。
基本を勉強しながらなので難しいですねぇ。
Dim b(128) As Byte のデータを
WritePrinter の2つ目のパラメーターの
IntPtr型に変換する方法を探しているところですが
ご存知でしたらご教示ください。